Bmc_AddCmd()
Adds all bmc-related commands to the interactive shell
Bmc_CheckFairnessListForPropositionalFormulae()
Helper function to simplify calling to 'bmc_check_wff_list' for searching of propositional wff only. Returns a new list of wffs which contains legal wffs only
Bmc_CommandBmcSetup()
Initializes the bmc sub-system, and builds the model in a Boolean Expression format
Bmc_CommandBmcSimulate()
Bmc_CommandBmcSimulate generates a trace of the problem represented from the simple path from 0 (zero) to k
Bmc_CommandCheckInvarBmc()
Generates and solve the given invariant, or all invariants if no formula is given
Bmc_CommandCheckLtlSpecBmcOnePb()
Checks the given LTL specification, or all LTL specifications if no formula is given. Checking parameters are the problem bound and the loopback values
Bmc_CommandCheckLtlSpecBmc()
Checks the given LTL specification, or all LTL specifications in the properties database if no formula is given
Bmc_CommandGenInvarBmc()
Generates and dumps the problem for the given invariant or for all invariants if no formula is given. SAT solver is not invoked.
Bmc_CommandGenLtlSpecBmcOnePb()
Generates only one problem with fixed bound and loopback, and dumps the problem to a dimacs file. The single problem is dumped for the given LTL specification, or for all LTL specifications if no formula is given
Bmc_CommandGenLtlSpecBmc()
Generates length_max+1 problems iterating the problem bound from zero to length_max, and dumps each problem to a dimacs file
Bmc_Conv_Be2Bexp()
Given a be, constructs the corresponding boolean expression
Bmc_Conv_Bexp2Be()
Converts given boolean expression into correspondent reduced boolean circuit
Bmc_Conv_BexpList2BeList()
Converts given boolean expressions list into correspondent reduced boolean circuits list
Bmc_Fsm_CreateFromSexprFSM()
Class Bmc_Fsm constructor
Bmc_Fsm_Create()
Class Bmc-Fsm constructor
Bmc_Fsm_Delete()
Class Bmc_Fsm destructor
Bmc_Fsm_Dup()
Copy constructor for class Bmc_Fsm
Bmc_Fsm_GetInit()
Returns the initial states stored in BE format into the given fsm instance
Bmc_Fsm_GetInvar()
Returns the invariants stored in BE format into the given fsm instance
Bmc_Fsm_GetListOfFairness()
Returns the list of fairness stored in BE format into the given fsm instance
Bmc_Fsm_GetTrans()
Returns the transition relation stored in BE format into the given fsm instance
Bmc_Fsm_GetVarsManager()
Returns the variables manager associated with the given fsm instance
Bmc_Fsm_SetFairness()
Private service to set the list of fairness into the given fsm
Bmc_Fsm_SetInit()
Private service to set init states into the given fsm
Bmc_Fsm_SetInvar()
Private service to set invar states into the given fsm
Bmc_Fsm_SetTrans()
Private service to set the transition relation into the given fsm
Bmc_Gen_InvarBaseStep()
Returns the base step of the invariant construction
Bmc_Gen_InvarInductStep()
Returns the induction step of the invariant construction
Bmc_Gen_InvarProblem()
Builds and returns the invariant problem of the given propositional formula
Bmc_Gen_LtlProblem()
Returns the LTL problem at length k with loopback l (single loop, no loop and all loopbacks are allowed)
Bmc_GetTestTableau()
Bmc_Init()
Initializes the BMC model manager structure
Bmc_IsPropositionalFormula()
Given a wff returns 1 if wff is a propositional formula, zero (0) otherwise.
Bmc_Model_GetFairness()
Generates and returns an expression representing all fairnesses in a conjunctioned form
Bmc_Model_GetInit0()
Retrieves the init states from the given fsm, and compiles them into a BE at time 0
Bmc_Model_GetInvarAtTime()
Retrieves the invars from the given fsm, and compiles them into a BE at the given time
Bmc_Model_GetPathNoInit()
Returns the path for the model from 0 to k, taking into account the invariants (and no init)
Bmc_Model_GetPathWithInit()
Returns the path for the model from 0 to k, taking into account initial conditions and invariants
Bmc_Model_GetUnrolling()
Unrolls the transition relation from j to k, taking into account of invars
Bmc_Problem_Create()
Class Bmc_Problem constructor
Bmc_Problem_Delete()
Bmc_Problem destructor
Bmc_Problem_GetBeProblem()
Accessor method to retrieve the original problem in BE format
Bmc_Problem_GetCnf()
Returns the problem in CNF format
Bmc_Quit()
Frees all resources allocated for the BMC model manager
Bmc_SatTrace_Create()
Class Bmc_SatTrace constructor
Bmc_SatTrace_Delete()
Class Bmc_SatTrace destructor
Bmc_SatTrace_GetSymbModelInvar()
As Bmc_SatTrace_GetSymbModel, but for invariants
Bmc_SatTrace_GetSymbModel()
Returns the bdd-based symbolic model
Bmc_Sat_SolveInvarProblem()
Calls the specified solver with the given invar problem, and returns a sat result if there is any
Bmc_Sat_SolveProblem()
Calls the specified solver with the given problem, and returns a sat result if there is any
Bmc_TableauLTL_GetAllLoopsDepth1()
Builds tableau for all possible loops in [l, k], in the particular case in which depth is 1. This function takes into account of fairness
Bmc_TableauLTL_GetAllLoops()
Builds tableau for all possible loops in [l, k[, taking into account of fairness
Bmc_TableauLTL_GetNoLoop()
Builds tableau without loop at time zero, taking into account of fairness
Bmc_TableauLTL_GetSingleLoopWithFairness()
Builds the tableau at time zero. Loop is allowed, fairness are taken into account
Bmc_TableauLTL_GetSingleLoop()
Builds the tableau at time zero. Loop is allowed, fairness are taken into account
Bmc_TableauPLTL_GetAllLoopsDepth1()
Builds tableau for all possible (k,l)-loops for a fixed k, in the particular case depth==1. This function takes into account of fairness.
Bmc_TableauPLTL_GetAllLoops()
Returns the conjunction of the single-loop tableaux for all possible (k,l)-loops for a fixed k. Each single-loop tableau takes into account of both fairness constraints and loop condition.
Bmc_TableauPLTL_GetAllTimeTableau()
Builds the conjunction of the tableaux for a PLTL formula computed on every time instant along a (k,l)-loop.
Bmc_TableauPLTL_GetNoLoop()
Returns the tableau for a PLTL formula on a bounded path of length k, reasoning on fairness conditions as well.
Bmc_TableauPLTL_GetSingleLoop()
Returns the tableau for a PLTL formula on a (k,l)-loop, conjuncted with both fairness conditions and the loop condition on time steps k and l.
Bmc_TableauPLTL_GetTableau()
Builds the tableau for a PLTL formula.
Bmc_Tableau_GetAllLoopsDepth1()
Builds tableau for all possible loops in [l, k], in the particular case in which depth is 1. This function takes into account of fairness
Bmc_Tableau_GetAllLoopsDisjunction()
Builds the disjunction of all the loops conditions for (k-l)-loops with l in [0, k[
Bmc_Tableau_GetAllLoops()
Builds tableau for all possible loops in [l, k[, taking into account of fairness
Bmc_Tableau_GetLoopCondition()
Builds a tableau that constraints state k to be equal to state l. This is the condition for a path of length (k+1) to represent a (k-l)loop (new semantics).
Bmc_Tableau_GetNoLoop()
Builds tableau without loop at time zero, taking into account of fairness
Bmc_Tableau_GetSingleLoop()
Builds tableau for all possible loops in [l, k], in the particular case in which depth is 1. This function takes into account of fairness
Bmc_TestReset()
Call this function to reset the test sub-package (into the reset command for example)
Bmc_TestTableau()
The first time Bmc_TestTableau is called in the current session this function creates a smv file with a model and generates a random ltl spec to test tableau. The following times it is called it appends a new formula to the file.
Bmc_TestVarsMgr()
Bmc_TestVarsMgr
Bmc_Utils_Check_k_l()
Checks the (k,l) couple. l must be absolute.
Bmc_Utils_ConvertLoopFromInteger()
Given an integer containing the inner representation of the loopback value, returns as parameter the corresponding user-side value as string
Bmc_Utils_ConvertLoopFromString()
Given a string representing a loopback possible value, returns the corresponding integer. The (optional) parameter result will be assigned to SUCCESS if the conversion has been successfully performed, otherwise to GENERIC_ERROR is the conversion failed. If result is NULL, SUCCESS is the aspected value, and an assertion is implicitly performed to check the conversion outcome.
Bmc_Utils_ExpandMacrosInFilename()
Search into a given string any symbol which belongs to a determined set of symbols, and expand each found symbol, finally returning the resulting string
Bmc_Utils_GetAllLoopbacksString()
Returns a constant string which represents the "all loops" semantic.
Bmc_Utils_GetAllLoopbacks()
Returns the integer value which represents the "all loops" semantic
Bmc_Utils_GetNoLoopback()
Returns the integer value which represents the "no loop" semantic
Bmc_Utils_GetSuccTime()
Given time<=k and a [l, k] interval, returns next time, or BMC_NO_LOOP if time is equal to k and there is no loop
Bmc_Utils_IsAllLoopbacksString()
Returns true if the given string represents the "all possible loops" value.
Bmc_Utils_IsAllLoopbacks()
Returns true if the given loop value represents the "all possible loopbacks" semantic
Bmc_Utils_IsNoLoopbackString()
Returns true if the given string represents the no loopback value
Bmc_Utils_IsNoLoopback()
Returns true if l has the internally encoded "no loop" value
Bmc_Utils_IsSingleLoopback()
Returns true if the given loop value represents a single (relative or absolute) loopback
Bmc_Utils_RelLoop2AbsLoop()
Converts a relative loop value (wich can also be an absolute loop value) to an absolute loop value
Bmc_WffListMatchProperty()
For each element belonging to a given list of wffs, calls the given matching function. If function matches, calls given answering function
Bmc_Wff_GetDepth()
Returns the modal depth of the given formula
Bmc_Wff_MkAnd()
Makes an and WFF
Bmc_Wff_MkEventually()
Makes an eventually WFF
Bmc_Wff_MkFalsity()
Makes a false WFF
Bmc_Wff_MkGlobally()
Makes a globally WFF
Bmc_Wff_MkHistorically()
Makes a historically WFF
Bmc_Wff_MkIff()
Makes an iff WFF
Bmc_Wff_MkImplies()
Makes an implies WFF
Bmc_Wff_MkNext()
Makes a next WFF
Bmc_Wff_MkNnf()
Makes the negative normal form of given WFF
Bmc_Wff_MkNot()
Makes a not WFF
Bmc_Wff_MkOnce()
Makes an once WFF
Bmc_Wff_MkOpNext()
Makes an op_next WFF
Bmc_Wff_MkOpNotPrecNot()
Makes an op_next WFF
Bmc_Wff_MkOpPrec()
Makes an op_next WFF
Bmc_Wff_MkOr()
Makes an or WFF
Bmc_Wff_MkReleases()
Makes a releases WFF
Bmc_Wff_MkSince()
Makes an since WFF
Bmc_Wff_MkTriggered()
Makes a triggered WFF
Bmc_Wff_MkTruth()
Makes a truth WFF
Bmc_Wff_MkUntil()
Makes an until WFF
Bmc_Wff_MkXopNext()
Applies op_next x times
bmc_CommandsWith_k_l_OptionsHandling()
Bmc commands options handling for commands with -k and -l options
bmc_CommandsWithout_k_l_OptionsHandling()
Bmc commands options handling for commands without -k and -l options
bmc_add_valid_wff_to_list()
private service for Bmc_CheckFairnessListForPropositionalFormulae
bmc_check_if_wff_is_valid()
private service for Bmc_CheckFairnessListForPropositionalFormulae
bmc_is_propositional_formula_aux()
Useful wrapper for Bmc_CheckFairnessListForPropositionalFormulae
bmc_sat_trace_calculateSymbModel()
Private service for class Bmc_SatTrace methods
bmc_sat_trace_clear_model()
Service function
bmc_sat_trace_prop2symb()
Private service for Bmc_SatTrace methods
bmc_tableauGetEventuallyAtTime()
Resolves the future operator, and builds a conjunctive expression of tableaus, by iterating intime up to k in a different manner depending on the [l, k] interval form
bmc_tableauGetGloballyAtTime()
As bmc_tableauGetEventuallyAtTime, but builds a conjunctioned expression in order to be able to assure a global constraint
bmc_tableauGetNextAtTime()
Resolves the NEXT operator, building the tableau for its argument
bmc_tableauGetReleasesAtTime_aux()
auxiliary part of bmc_tableauGetReleasesAtTime
bmc_tableauGetReleasesAtTime()
Builds an expression which evaluates the release operator
bmc_tableauGetUntilAtTime_aux()
auxiliary part of bmc_tableauGetUntilAtTime
bmc_tableauGetUntilAtTime()
Builds an expression which evaluates the until operator
bmc_test_bexpr_output()
Write to specified FILE stream given node_ptr formula with specified output_type format. There are follow formats: BMC_BEXP_OUTPUT_SMV, BMC_BEXP_OUTPUT_LB
bmc_test_gen_tableau()
Given a WFF in NNF, converts it into a tableau formula, then back to WFF_(k,l) and returns WFF -> WFF_(k,l)
bmc_test_gen_wff()
Builds a random LTL WFF with specified max depth and max connectives.
bmc_test_mk_loopback_ltl()
For each variable p in the set of state variables, generates the global equivalence of p and X^(loop length), starting from the loop start
bmc_wff_mkBinary()
Makes a binary WFF
bmc_wff_mkConst()
Makes a constant WFF
bmc_wff_mkUnary()
Makes a unary WFF

Last updated on 2004/06/23 13h:55