ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
reluctant.h
Go to the documentation of this file.
1#ifndef _reluctant_h_INCLUDED
2#define _reluctant_h_INCLUDED
3
4#include <stdbool.h>
5#include <stdint.h>
6
7#include "global.h"
9
10typedef struct reluctant reluctant;
11
12struct reluctant {
13 bool limited;
14 bool trigger;
15 uint64_t period;
16 uint64_t wait;
17 uint64_t u, v;
18 uint64_t limit;
19};
20
21void kissat_enable_reluctant (reluctant *, uint64_t period, uint64_t limit);
24
25static inline bool kissat_reluctant_triggered (reluctant *reluctant) {
26 if (!reluctant->trigger)
27 return false;
28 reluctant->trigger = false;
29 return true;
30}
31
32struct kissat;
33
34void kissat_init_reluctant (struct kissat *);
35
37
38#endif
#define ABC_NAMESPACE_HEADER_END
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
void kissat_tick_reluctant(reluctant *)
Definition reluctant.c:22
void kissat_init_reluctant(struct kissat *)
Definition reluctant.c:59
void kissat_disable_reluctant(reluctant *)
Definition reluctant.c:18
void kissat_enable_reluctant(reluctant *, uint64_t period, uint64_t limit)
Definition reluctant.c:6
uint64_t u
Definition reluctant.h:17
uint64_t wait
Definition reluctant.h:16
bool trigger
Definition reluctant.h:14
uint64_t limit
Definition reluctant.h:18
uint64_t period
Definition reluctant.h:15
uint64_t v
Definition reluctant.h:17
bool limited
Definition reluctant.h:13