Prop_Ptr 
Prop_Alloc(
    
)
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_BuildFsm(
  Prop_Ptr  prop, 
  node_ptr  vars, 
  node_ptr  fair_expr, 
  add_ptr  assumption 
)
Fills all the FSM fields, with the exception of the RBC fsm, of a property. If vars corresponds to all the system variables then the whole system is computed, otherwise only the FSM corresponding to the variables specified will be included in then model (e.g. cone of influence).


void 
Prop_BuildMasterProp(
  node_ptr  vars, 
  node_ptr  fair_expr, 
  add_ptr  assumption 
)
Fills all the FSM fields of the master property, with the exception of the RBC fsm, of a property. If vars corresponds to all the system variables then the whole system is computed, otherwise only the FSM corresponding to the variables specified will be included in then model (e.g. cone of influence).


int 
Prop_CheckType(
  Prop_Ptr  property, 
  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_CreatePropPartial(
  int  index, 
  node_ptr  prop, 
  Prop_Type  type 
)
Creates a property structure filling only the property and property type fields


void 
Prop_DbPrintAllStatusType(
  FILE * file, 
  Prop_Type  type, 
  Prop_Status  status 
)
Prints on the given file stream all the property stored in the DB of properties whose type and status match the requested ones.


void 
Prop_DbPrintAllStatus(
  FILE * file, 
  Prop_Status  status 
)
Prints on the given file stream all the property stored in the DB of properties whose status match the requested one.


void 
Prop_DbPrintAllType(
  FILE * file, 
  Prop_Type  type 
)
Prints on the given file stream all the property stored in the DB of properties whose type match the requested one.


void 
Prop_DbPrintAll(
  FILE * file 
)
Prints on the given file stream all the property stored in the DB of properties.


void 
Prop_DbVerifyAllTypeCompute(
    
)
The DB of properties is searched for a property of type COMPUTE, and all the unchecked COMPUTE properties found will be submitted to model checking.


void 
Prop_DbVerifyAllTypeCtl(
    
)
The DB of properties is searched for a property of type CTL, and all the unchecked CTL properties found will be submitted to model checking.


void 
Prop_DbVerifyAllTypeInvar(
    
)
The DB of properties is searched for a property of type INVAR, and all the unchecked INVAR properties found will be submitted to model checking.


void 
Prop_DbVerifyAllTypeLtl(
    
)
The DB of properties is searched for a property of type LTL, and all the unchecked LTL properties found will be submitted to model checking.


void 
Prop_DbVerifyAllType(
  Prop_Type  type 
)
The DB of properties is searched for a property of the given type. All the found properties are then verified calling the appropriate model checking algorithm. Properties already checked will be ignored.


int 
Prop_Db_Add(
  Prop_Ptr  p 
)
Insert a property in the DB of properties. It returns 1 if out of memory.


Prop_Ptr 
Prop_Db_GetLast(
    
)
Returns the last entered property in the DB of properties.


Prop_Ptr 
Prop_Db_GetNum(
  int  num 
)
Returns the property whose unique identifier is provided in input.last entered property in the DB of properties.


lsList 
Prop_Db_GetPropsOfType(
  const Prop_Type  type 
)
Given a property type returns the list of properties of that type currently located into the property database


int 
Prop_Db_GetSize(
    
)
Returns the size (i.e. the number of entries) stored in the DB of properties.


void 
Prop_Db_Init(
    
)
Initializes the DB of properties to an empty DB


int 
Prop_Db_PropCreateAndAdd(
  node_ptr  prop, 
  Prop_Type  type 
)
Given a formula and its type, a property is created and stored in the DB of properties. It returns either -1 in case of failure, or the index of the inserted property.


int 
Prop_Db_PropParseAndAdd(
  const char* str, 
  const Prop_Type  type 
)
Parses and creates a property of a given type from a string. 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.


int 
Prop_Db_PropParseFromArgAndAdd(
  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_Db_Quit(
    
)
Disposes the DB of properties


void 
Prop_Db_VerifyAll(
    
)
All the properties stored in the database not yet verified will be verified. The properties are verified following the order CTL/COMPUTE/LTL/INVAR.


void 
Prop_Db_VerifyPropIndex(
  int  prop 
)
The DB of properties is searched for a property whose unique identifier match the identifier provided and then if such a property exists it will be verified calling the appropriate model checking algorithm. If the property was checked before, then the property is not checked again.


void 
Prop_Db_VerifyProp(
  Prop_Ptr  prop 
)
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_DecodeStatus(
  Prop_Status  t 
)
Returns the string corresponding to a property status for printing it.


const char * 
Prop_DecodeType(
  Prop_Type  t 
)
Returns the string corresponding to a property type for printing it.


void 
Prop_Destroy(
  Prop_Ptr  p 
)
Destroy the elements of a property


void 
Prop_End(
    
)
Quit the prop package


void 
Prop_FillPropDb(
  node_ptr  ctlspec, 
  node_ptr  computespec, 
  node_ptr  ltlspec, 
  node_ptr  invarspec 
)
Given for each kind of property a list of respective fomulae, this function is responsible to fill the DB with them.


void 
Prop_Free(
  Prop_Ptr  n 
)
Free a property. Notice that before freeing the property all the elements of the property that needs to be freed will be automatically freed.


Fsm_BddPtr 
Prop_GetBddFsm(
  Prop_Ptr  p 
)
Resturns the boolean FSM in BDD associated to the property.


Fsm_SexpPtr 
Prop_GetBoolFsm(
  Prop_Ptr  p 
)
Resturns the boolean FSM in sexp associated to the property.


Set_t 
Prop_GetCone(
  Prop_Ptr  p 
)
If the cone of influence of a property has been computed, this function returns it.


int 
Prop_GetIndex(
  Prop_Ptr  p 
)
Returns the unique identifier of a property. It is used in the database of property to identify properties.


int 
Prop_GetNumber(
  Prop_Ptr  p 
)
For COMPUTE properties returns the number resulting from the evaluation of the property.


int 
Prop_GetPropIdxFromString(
  const char* idx 
)
Gets the index of a property form a string. If the string does not contain a valid index, an error message is emitted and -1 is returned.


node_ptr 
Prop_GetProp(
  Prop_Ptr  p 
)
Returns the property stored in the prop


Fsm_RbcPtr 
Prop_GetRbcFsm(
  Prop_Ptr  p 
)
Resturns the boolean FSM in RBC associated to the property.


Fsm_SexpPtr 
Prop_GetScalarFsm(
  Prop_Ptr  p 
)
Resturns the scalar FSM in sexp associated to the property.


Prop_Status 
Prop_GetStatus(
  Prop_Ptr  p 
)
Returns the status of the property


int 
Prop_GetTrace(
  Prop_Ptr  p 
)
For unsatisfied properties, the trace number of the asscociated counterexample is returned.


Prop_Type 
Prop_GetType(
  Prop_Ptr  p 
)
Returns the property kind of the stroed property, i.e. CTL, LTL, ...


void 
Prop_InitPropMaster(
    
)
Crates the master prop to store the whole FSM


void 
Prop_Init(
    
)
Initialize the prop package


Fsm_BddPtr 
Prop_MasterGetBddFsm(
    
)
Returns the boolean FSM in BDD stored in the master prop


Fsm_SexpPtr 
Prop_MasterGetBoolFsm(
    
)
Returns the boolean FSM in sexp stored in the master prop


Fsm_RbcPtr 
Prop_MasterGetRbcFsm(
    
)
Returns the boolean FSM in RBC stored in the master prop


Fsm_SexpPtr 
Prop_MasterGetScalarFsm(
    
)
Returns the scalar FSM stored in the master prop


void 
Prop_MasterSetBddFsm(
  Fsm_BddPtr  fsm 
)
Set the boolean FSM in BDD of the master prop


void 
Prop_MasterSetBoolFsm(
  Fsm_SexpPtr  fsm 
)
Set the boolean FSM in sexp of the master prop


void 
Prop_MasterSetRbcFsm(
  Fsm_RbcPtr  fsm 
)
Set the boolean FSM in RBC of the master prop


void 
Prop_MasterSetScalarFsm(
  Fsm_SexpPtr  fsm 
)
Set the scalar FSM of the master prop


void 
Prop_PrintPropHeader(
  FILE * file 
)
optional


int 
Prop_PrintPropNum(
  FILE * file, 
  int  num 
)
Prints on the given file stream the property whose unique identifier is specified


void 
Prop_PrintProp(
  FILE * file, 
  Prop_Ptr  prop 
)
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_QuitPropMaster(
    
)
Free the master prop


void 
Prop_SetBddFsm(
  Prop_Ptr  p, 
  Fsm_BddPtr  fsm 
)
Sets the boolean FSM in BDD associated to the property.


void 
Prop_SetBoolFsm(
  Prop_Ptr  p, 
  Fsm_SexpPtr  f 
)
Sets the boolean FSM in sexp associated to the property.


void 
Prop_SetCone(
  Prop_Ptr  p, 
  Set_t  c 
)
Stores the cone of influence of the property


void 
Prop_SetFsmToMaster(
  Prop_Ptr  prop 
)
Copies the FSM informations stored in the master prop into the corresponding fields of the given prop structure.


void 
Prop_SetIndex(
  Prop_Ptr  p, 
  int  index 
)
Sets the unique identifier of a property


void 
Prop_SetNumberInfinte(
  Prop_Ptr  p 
)
Sets the to INFINITE the number resulting from the evaluation of the property.


void 
Prop_SetNumber(
  Prop_Ptr  p, 
  int  n 
)
Sets the number resulting from the evaluation of the property.


void 
Prop_SetProp(
  Prop_Ptr  p, 
  node_ptr  e 
)
Stores the property in the prop structure.


void 
Prop_SetRbcFsm(
  Prop_Ptr  p, 
  Fsm_RbcPtr  fsm 
)
Sets the boolean FSM in RBC associated to the property.


void 
Prop_SetScalarFsm(
  Prop_Ptr  p, 
  Fsm_SexpPtr  f 
)
Sets the scalar FSM in sexp associated to the property.


void 
Prop_SetStatus(
  Prop_Ptr  p, 
  Prop_Status  s 
)
Sets the status of the property


void 
Prop_SetTrace(
  Prop_Ptr  p, 
  int  t 
)
Sets the trace number for an unsatisfied property.


void 
Prop_SetType(
  Prop_Ptr  p, 
  Prop_Type  t 
)
Stores the property type.


Last updated on 1020130 15h19