def build_master_be_fsm(): """ Creates the BE fsm from the Sexpr FSM. Currently the be_enc is a singleton global private variable which is shared between all the BE FSMs. If not previoulsy committed (because a boolean encoder was not available at the time due to the use of coi) the determinization layer will be committed to the be_encoder :raises NuSMVBeEncNotInitializedError: if the global BeEnc singleton is not initialized """ global __be_fsm # raises the exception if necessary be_enc = BeEnc.global_singleton_instance() sym_table = be_enc.symbol_table if _symb_table.SymbTable_get_layer(sym_table._ptr, "inlining") is not None: # commits the determ layer if not previously committed if not _baseenc.BaseEnc_layer_occurs(be_enc._ptr, "determ"): _baseenc.BaseEnc_commit_layer(be_enc._ptr, "determ") # commits the inlining layer if not previously committed # note: I find this a little bit weird, but that's the way NuSMV proceeds if not _baseenc.BaseEnc_layer_occurs(be_enc._ptr, "inlining"): _baseenc.BaseEnc_commit_layer(be_enc._ptr, "inlining") # actual fsm creation __be_fsm = BeFsm.create_from_sexp(be_enc, glob.master_bool_sexp_fsm()) propdb = _prop.PropPkg_get_prop_database() _prop.PropDb_master_set_be_fsm(propdb, __be_fsm._ptr);
def setUp(self): init_nusmv() load_from_file( tests.current_directory(__file__) + "/models/flipflops.smv") go_bmc() self.enc = BeEnc.global_singleton_instance() self.mgr = self.enc.manager
def encoding(self): """The BE encoding of this FSM""" if not hasattr(self, "__encoding"): setattr(self, '__encoding', BeEnc(_be.BeFsm_get_be_encoding(self._ptr), freeit=False)) return getattr(self, '__encoding')
def setUp(self): init_nusmv() load_from_file(tests.current_directory(__file__)+"/models/flipflops_vif.smv") go_bmc() self._TESTED = BeEnc.global_singleton_instance()
def setUp(self): init_nusmv() load_from_file(tests.current_directory(__file__)+"/models/flipflops.smv") go_bmc() self.enc = BeEnc.global_singleton_instance() self.mgr = self.enc.manager
def setUp(self): init_nusmv() load_from_file( tests.current_directory(__file__) + "/models/flipflops_vif.smv") go_bmc() self._TESTED = BeEnc.global_singleton_instance()