ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
averages.h File Reference
#include "smooth.h"
#include <stdbool.h>
#include "global.h"
Include dependency graph for averages.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  averages
 

Macros

#define AVERAGES   (solver->averages[solver->stable])
 
#define EMA(NAME)
 
#define AVERAGE(NAME)
 
#define UPDATE_AVERAGE(NAME, VALUE)
 

Typedefs

typedef typedefABC_NAMESPACE_HEADER_START struct averages averages
 

Functions

void kissat_init_averages (struct kissat *, averages *)
 

Macro Definition Documentation

◆ AVERAGE

#define AVERAGE ( NAME)
Value:
(EMA (NAME).value)
#define EMA(NAME)
Definition averages.h:29
@ NAME
Definition inflate.h:29

Definition at line 31 of file averages.h.

◆ AVERAGES

#define AVERAGES   (solver->averages[solver->stable])

Definition at line 27 of file averages.h.

◆ EMA

#define EMA ( NAME)
Value:
(AVERAGES.NAME)
#define AVERAGES
Definition averages.h:27

Definition at line 29 of file averages.h.

◆ UPDATE_AVERAGE

#define UPDATE_AVERAGE ( NAME,
VALUE )
Value:
#define solver
Definition kitten.c:211
void kissat_update_smooth(kissat *solver, smooth *smooth, double y)
Definition smooth.c:27
#define VALUE(LIT)
Definition value.h:10

Definition at line 33 of file averages.h.

33#define UPDATE_AVERAGE(NAME, VALUE) \
34 kissat_update_smooth (solver, &EMA (NAME), VALUE)

Typedef Documentation

◆ averages

typedef typedefABC_NAMESPACE_HEADER_START struct averages averages

Definition at line 11 of file averages.h.

Function Documentation

◆ kissat_init_averages()

void kissat_init_averages ( struct kissat * solver,
averages * averages )

Definition at line 5 of file averages.c.

5 {
7 return;
8#define INIT_EMA(EMA, WINDOW) \
9 kissat_init_smooth (solver, &averages->EMA, WINDOW, #EMA)
10#ifndef KISSAT_QUIET
11 INIT_EMA (level, GET_OPTION (emaslow));
12 INIT_EMA (size, GET_OPTION (emaslow));
13 INIT_EMA (trail, GET_OPTION (emaslow));
14#endif
15 INIT_EMA (fast_glue, GET_OPTION (emafast));
16 INIT_EMA (slow_glue, GET_OPTION (emaslow));
17 INIT_EMA (decision_rate, GET_OPTION (emaslow));
18 averages->initialized = true;
19}
#define INIT_EMA(EMA, WINDOW)
#define GET_OPTION(N)
Definition options.h:295
bool initialized
Definition averages.h:14