AMulet 2.0
AIG Multiplier Verification Tool
aig.h
Go to the documentation of this file.
1 /*------------------------------------------------------------------------*/
8 /*------------------------------------------------------------------------*/
9 #ifndef _aig_H
10 #define _aig_H
11 /*------------------------------------------------------------------------*/
12 #include <assert.h>
13 
14 #include "signal_statistics.h"
15 
16 extern "C"{
17  #include "../includes/aiger.h"
18 }
19 /*------------------------------------------------------------------------*/
20 
21 extern unsigned M;
22 extern unsigned NN;
23 
24 extern unsigned a0;
25 extern unsigned al;
26 extern unsigned ainc;
27 
28 extern unsigned b0;
29 extern unsigned bl;
30 extern unsigned binc;
31 
32 
35 extern aiger * miter;
36 
39 extern aiger * rewritten;
40 
41 /*------------------------------------------------------------------------*/
42 
47 
51 void init_aig_parsing();
52 
53 /*------------------------------------------------------------------------*/
54 
59 
63 void reset_aig_parsing();
64 /*------------------------------------------------------------------------*/
65 // Functions that interfer with aiger* model, that is used to store the
66 // input AIG.
67 
77 const char * aiger_open_and_read_to_model (const char * input_name);
78 
86 bool is_model_input(unsigned val);
87 
95 aiger_and * is_model_and(unsigned val);
96 
102 unsigned get_model_num_latches();
103 
109 unsigned get_model_num_inputs();
110 
116 unsigned get_model_num_ands();
117 
123 unsigned get_model_num_outputs();
124 
130 unsigned get_model_maxvar();
131 
139 unsigned get_model_inputs_lit(unsigned i);
140 
148 const char* get_model_inputs_name(unsigned i);
149 
150 
158 unsigned slit (unsigned i);
159 
160 
168 int write_model(FILE *file);
169 
170 #endif
void reset_aig_substitution()
Definition: aig.cpp:28
void init_aig_parsing()
Definition: aig.cpp:33
unsigned binc
distance between aiger values of B
Definition: aig.cpp:14
aiger_and * is_model_and(unsigned val)
Definition: aig.cpp:50
unsigned bl
input value for the MSB of input vector B
Definition: aig.cpp:14
void reset_aig_parsing()
Definition: aig.cpp:37
unsigned get_model_num_latches()
Definition: aig.cpp:54
unsigned get_model_num_outputs()
Definition: aig.cpp:57
int write_model(FILE *file)
Definition: aig.cpp:76
aiger * rewritten
Definition: aig.cpp:16
const char * get_model_inputs_name(unsigned i)
Definition: aig.cpp:65
aiger * miter
Definition: aig.cpp:17
unsigned b0
input value for the LSB of input vector B
Definition: aig.cpp:14
void init_aig_substitution()
Definition: aig.cpp:23
unsigned get_model_num_ands()
Definition: aig.cpp:56
unsigned ainc
distance between aiger values of A
Definition: aig.cpp:13
unsigned get_model_maxvar()
Definition: aig.cpp:58
bool is_model_input(unsigned val)
Definition: aig.cpp:46
const char * aiger_open_and_read_to_model(const char *input_name)
Definition: aig.cpp:41
unsigned M
stores the maximum variable num of the input AIG
Definition: aig.cpp:12
unsigned NN
stores the number of inputs of the input AIG
Definition: aig.cpp:12
unsigned get_model_inputs_lit(unsigned i)
Definition: aig.cpp:60
static const char * input_name
Name of the input file.
Definition: amulet.cpp:65
unsigned slit(unsigned i)
Definition: aig.cpp:70
unsigned al
input value for the MSB of input vector A
Definition: aig.cpp:13
used to handle signals, messages and statistics
unsigned get_model_num_inputs()
Definition: aig.cpp:55
unsigned a0
input value for the LSB of input vector A
Definition: aig.cpp:13