00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00038 #ifndef __NUSMV_CORE_BMC_SBMC_SBMC_TABLEAU_INC_LTLFORMULA_H__
00039 #define __NUSMV_CORE_BMC_SBMC_SBMC_TABLEAU_INC_LTLFORMULA_H__
00040
00041 #include "nusmv/core/fsm/be/BeFsm.h"
00042
00043 #include "nusmv/core/be/be.h"
00044 #include "nusmv/core/node/node.h"
00045 #include "nusmv/core/utils/utils.h"
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00071
00072
00073
00074
00112 lsList sbmc_unroll_base(const BeEnc_ptr be_enc,
00113 const node_ptr ltlspec,
00114 const hash_ptr info_map,
00115 const be_ptr be_LoopExists,
00116 const int do_optimization);
00117
00128 lsList sbmc_unroll_invariant_propositional(const BeEnc_ptr be_enc,
00129 const node_ptr ltlspec,
00130 const unsigned int i_model,
00131 const hash_ptr info_map,
00132 const be_ptr be_InLoop_i,
00133 const be_ptr be_l_i,
00134 const int do_optimization);
00135
00146 lsList sbmc_unroll_invariant_f(const BeEnc_ptr be_enc,
00147 const node_ptr ltlspec,
00148 const unsigned int i_model,
00149 const hash_ptr info_map,
00150 const be_ptr be_InLoop_i,
00151 const be_ptr be_l_i,
00152 const be_ptr be_LastState_i,
00153 const be_ptr be_LoopExists,
00154 const int do_optimization);
00155
00164 lsList sbmc_unroll_invariant_p(const BeEnc_ptr be_enc,
00165 const node_ptr ltlspec,
00166 const unsigned int i_model,
00167 const hash_ptr info_map,
00168 const be_ptr be_InLoop_i,
00169 const be_ptr be_l_i,
00170 const int do_optimization);
00171
00180 lsList sbmc_formula_dependent(const BeEnc_ptr be_enc,
00181 const node_ptr ltlspec,
00182 const unsigned int k_model,
00183 const hash_ptr info_map);
00184
00194 lsList sbmc_unroll_invariant(const BeEnc_ptr be_enc,
00195 const node_ptr bltlspec,
00196 const int previous_k,
00197 const int new_k,
00198 const state_vars_struct *state_vars,
00199 array_t * InLoop_array,
00200 const hash_ptr info_map,
00201 const be_ptr be_LoopExists,
00202 const int opt_do_optimization);
00203
00217 lsList sbmc_dependent(const BeEnc_ptr be_enc,
00218 const node_ptr bltlspec,
00219 const int k,
00220 const state_vars_struct *state_vars,
00221 array_t *InLoop_array,
00222 const be_ptr be_LoopExists,
00223 const hash_ptr info_map);
00224
00227 #endif