void 
Prop_apply_coi_for_bdd(
  Prop_ptr  self, 
  FsmBuilder_ptr  helper 
)
The COI is applied only for BDD-based model checking. To apply for BMC, use Prop_apply_coi_for_bmc

Side Effects Internal FSMs are computed


void 
Prop_apply_coi_for_bmc(
  Prop_ptr  self, 
  FsmBuilder_ptr  helper 
)
The COI is applied only for BMC-based model checking. To apply for BDD, use Prop_apply_coi_for_bdd

Side Effects Internal FSMs are computed


int 
Prop_check_type(
  const Prop_ptr  self, 
  Prop_Type  type 
)
Checks if a property in the database is of a given type. If the type is correct, value 0 is returned, otherwise an error message is emitted and value 1 is returned.


Prop_ptr 
Prop_create_partial(
  int  index, 
  Expr_ptr  expr, 
  Prop_Type  type 
)
Creates a property structure filling only the property and property type fields. This private function must be accessed from module PropDb


Prop_ptr 
Prop_create(
    
)
Allocate a property. If no more room is available then a call to numsv_exit is performed. All the fields of the prop structure are initialized to either NULL or the corresponding default type (e.g. Prop_NoType for property type).


void 
Prop_destroy(
  Prop_ptr  self 
)
Free a property. Notice that before freeing the property all the elements of the property that needs to be freed will be automatically freed.


BddFsm_ptr 
Prop_get_bdd_fsm(
  Prop_ptr  self 
)
Returns the boolean FSM in BDD associated to the property. Self keeps the ownership of the given fsm


Bmc_Fsm_ptr 
Prop_get_be_fsm(
  const Prop_ptr  self 
)
Returns the boolean FSM in BE associated to the property. Self keeps the ownership of the given fsm


SexpFsm_ptr 
Prop_get_bool_sexp_fsm(
  const Prop_ptr  self 
)
Resturns the boolean FSM in sexp associated to the property. Self keeps the ownership of the given fsm


Set_t 
Prop_get_cone(
  const Prop_ptr  self 
)
If the cone of influence of a property has been computed, this function returns it.


char* 
Prop_get_context_text(
  const Prop_ptr  self 
)
If the property has no explicit context, 'Main' will be returned. The returned string must be deleted by the caller.


Expr_ptr 
Prop_get_expr(
  const Prop_ptr  self 
)
Returns the property stored in the prop


int 
Prop_get_index(
  const Prop_ptr  self 
)
Returns the unique identifier of a property


char* 
Prop_get_number_as_string(
  const Prop_ptr  self 
)
Returns a number, 'Inifinite' or 'Unchecked'. The returned string is dynamically created, and caller must free it.


int 
Prop_get_number(
  const Prop_ptr  self 
)
For COMPUTE properties returns the number resulting from the evaluation of the property.


SexpFsm_ptr 
Prop_get_scalar_sexp_fsm(
  const Prop_ptr  self 
)
Resturns the scalar FSM in sexp associated to the property. Self keeps the ownership of the given fsm


const char* 
Prop_get_status_as_string(
  const Prop_ptr  self 
)
Returns the string corresponding to a property status for printing it. The caller must NOT free the returned string, dince it is a constant.


Prop_Status 
Prop_get_status(
  const Prop_ptr  self 
)
Returns the status of the property


char* 
Prop_get_text(
  const Prop_ptr  self 
)
The returned string must be deleted by the caller.


int 
Prop_get_trace(
  const Prop_ptr  self 
)
For unsatisfied properties, the trace number of the asscociated counterexample is returned.


const char* 
Prop_get_type_as_string(
  Prop_ptr  self 
)
Returns the string corresponding to a property type for printing it. Returned string must NOT be deleted


Prop_Type 
Prop_get_type(
  const Prop_ptr  self 
)
Returns the property kind of the stroed property, i.e. CTL, LTL, ...


BddFsm_ptr 
Prop_master_get_bdd_fsm(
    
)
Returns the boolean FSM in BDD stored in the master prop


Bmc_Fsm_ptr 
Prop_master_get_be_fsm(
    
)
Returns the boolean FSM in BE stored in the master prop


SexpFsm_ptr 
Prop_master_get_bool_sexp_fsm(
    
)
Returns the boolean FSM in sexp stored in the master prop. The prop package becomes the owner of the given fsm


SexpFsm_ptr 
Prop_master_get_scalar_sexp_fsm(
    
)
Returns the scalar FSM stored in the master prop


void 
Prop_master_set_bdd_fsm(
  BddFsm_ptr  fsm 
)
Set the boolean FSM in BDD of the master prop. The prop package becomes the owner of the given fsm


void 
Prop_master_set_be_fsm(
  Bmc_Fsm_ptr  fsm 
)
Set the boolean FSM in BE of the master prop. The prop package becomes the owner of the given fsm


void 
Prop_master_set_bool_sexp_fsm(
  SexpFsm_ptr  fsm 
)
Set the boolean FSM in sexp of the master prop. The prop package becomes the owner of the given fsm


void 
Prop_master_set_scalar_sexp_fsm(
  SexpFsm_ptr  fsm 
)
Set the scalar FSM of the master prop


void 
Prop_print(
  Prop_ptr  self, 
  FILE* file 
)
Prints a property on the specified FILE stream. Some of the information stored in the property structure are printed out (e.g. property, property kind, property status, ...).


void 
Prop_set_bdd_fsm(
  Prop_ptr  self, 
  BddFsm_ptr  fsm 
)
The given fsm will be duplicated, so the caller keeps the ownership of fsm


void 
Prop_set_be_fsm(
  Prop_ptr  self, 
  Bmc_Fsm_ptr  fsm 
)
The given fsm will be duplicated, so the caller keeps the ownership of fsm


void 
Prop_set_bool_sexp_fsm(
  Prop_ptr  self, 
  SexpFsm_ptr  fsm 
)
The given fsm will be duplicated, so the caller keeps the ownership of fsm


void 
Prop_set_cone(
  Prop_ptr  self, 
  Set_t  cone 
)
Stores the cone of influence of the property


void 
Prop_set_fsm_to_master(
  Prop_ptr  self 
)
Copies the FSM informations stored in the master prop into the corresponding fields of the given prop structure.


void 
Prop_set_index(
  Prop_ptr  self, 
  const int  index 
)
Sets the unique identifier of a property


void 
Prop_set_number_infinite(
  Prop_ptr  self 
)
Sets the to INFINITE the number resulting from the evaluation of the property.


void 
Prop_set_number(
  Prop_ptr  self, 
  int  n 
)
Sets the number resulting from the evaluation of the property.


void 
Prop_set_scalar_sexp_fsm(
  Prop_ptr  self, 
  SexpFsm_ptr  fsm 
)
The given fsm will be duplicated, so the caller keeps the ownership of fsm


void 
Prop_set_status(
  Prop_ptr  self, 
  Prop_Status  s 
)
Sets the status of the property


void 
Prop_set_trace(
  Prop_ptr  self, 
  int  t 
)
Sets the trace number for an unsatisfied property.


void 
Prop_verify(
  Prop_ptr  self 
)
Depending the property, different model checking algorithms are called. The status of the property is updated accordingly to the result of the verification process.


const char* 
prop_db_get_prop_type_as_parsing_string(
  const Prop_Type  type 
)
Returns the parsing type given the property type


int 
prop_db_prop_parse_from_arg_and_add(
  Encoding_ptr  senc, 
  int  argc, 
  char** argv, 
  const Prop_Type  type 
)
Parses and creates a property of a given type from an arg structure. If the formula is correct, it is added to the property database and its index is returned. Otherwise, -1 is returned. Valid types are Prop_Ctl, Prop_Ltl, Prop_Invar and Prop_Compute.


void 
prop_deinit(
  Prop_ptr  self 
)
Destroy the elements of a property


void 
prop_init(
  Prop_ptr  self 
)
Initializes the property


void 
prop_print(
  const Prop_ptr  self, 
  FILE* file 
)
Prints a property


void 
prop_set_bdd_fsm(
  Prop_ptr  self, 
  BddFsm_ptr  fsm, 
  const boolean  duplicate 
)


void 
prop_set_be_fsm(
  Prop_ptr  self, 
  Bmc_Fsm_ptr  fsm, 
  const boolean  duplicate 
)


void 
prop_set_bool_sexp_fsm(
  Prop_ptr  self, 
  SexpFsm_ptr  fsm, 
  const boolean  duplicate 
)


void 
prop_set_scalar_sexp_fsm(
  Prop_ptr  self, 
  SexpFsm_ptr  fsm, 
  const boolean  duplicate 
)


Last updated on 2004/12/28 17h:38