C# Class Microsoft.Z3.Fixedpoint

Inheritance: Z3Object
Datei anzeigen Open project: sslab-gatech/juxta Class Usage Examples

Public Methods

Method Description
Add ( ) : void

Alias for Assert.

AddCover ( int level, FuncDecl predicate, Expr property ) : void

Add property about the predicate. The property is added at level.

AddFact ( FuncDecl pred ) : void

Add table fact to the fixedpoint solver.

AddRule ( BoolExpr rule, Symbol name = null ) : void

Add rule into the fixedpoint solver.

Assert ( ) : void

Assert a constraint (or multiple) into the fixedpoint solver.

GetAnswer ( ) : Expr

Retrieve satisfying instance or instances of solver, or definitions for the recursive predicates that show unsatisfiability.

GetCoverDelta ( int level, FuncDecl predicate ) : Expr

Retrieve the cover of a predicate.

GetNumLevels ( FuncDecl predicate ) : uint

Retrieve the number of levels explored for a given predicate.

GetReasonUnknown ( ) : string

Retrieve explanation why fixedpoint engine returned status Unknown.

ParseFile ( string file ) : Microsoft.Z3.BoolExpr[]

Parse an SMT-LIB2 file with fixedpoint rules. Add the rules to the current fixedpoint context. Return the set of queries in the file.

ParseString ( string s ) : Microsoft.Z3.BoolExpr[]

Similar to ParseFile. Instead it takes as argument a string.

Pop ( ) : void

Backtrack one backtracking point.

Note that an exception is thrown if Pop is called without a corresponding Push

Push ( ) : void

Creates a backtracking point.

Query ( BoolExpr query ) : Status

Query the fixedpoint solver. A query is a conjunction of constraints. The constraints may include the recursively defined relations. The query is satisfiable if there is an instance of the query variables and a derivation for it. The query is unsatisfiable if there are no derivations satisfying the query variables.

Query ( FuncDecl relations ) : Status

Query the fixedpoint solver. A query is an array of relations. The query is satisfiable if there is an instance of some relation that is non-empty. The query is unsatisfiable if there are no derivations satisfying any of the relations.

RegisterRelation ( FuncDecl f ) : void

Register predicate as recursive relation.

SetPredicateRepresentation ( FuncDecl f, Symbol kinds ) : void

Instrument the Datalog engine on which table representation to use for recursive predicate.

ToString ( ) : string

Retrieve internal string representation of fixedpoint object.

ToString ( BoolExpr queries ) : string

Convert benchmark given as set of axioms, rules and queries to a string.

UpdateRule ( BoolExpr rule, Symbol name ) : void

Update named rule into in the fixedpoint solver.

Private Methods

Method Description
DecRef ( IntPtr o ) : void
Fixedpoint ( Context ctx ) : System
Fixedpoint ( Context ctx, IntPtr obj ) : System
IncRef ( IntPtr o ) : void
ToBoolExprs ( ASTVector v ) : Microsoft.Z3.BoolExpr[]

Method Details

Add() public method

Alias for Assert.
public Add ( ) : void
return void

AddCover() public method

Add property about the predicate. The property is added at level.
public AddCover ( int level, FuncDecl predicate, Expr property ) : void
level int
predicate FuncDecl
property Expr
return void

AddFact() public method

Add table fact to the fixedpoint solver.
public AddFact ( FuncDecl pred ) : void
pred FuncDecl
return void

AddRule() public method

Add rule into the fixedpoint solver.
public AddRule ( BoolExpr rule, Symbol name = null ) : void
rule BoolExpr
name Symbol
return void

Assert() public method

Assert a constraint (or multiple) into the fixedpoint solver.
public Assert ( ) : void
return void

GetAnswer() public method

Retrieve satisfying instance or instances of solver, or definitions for the recursive predicates that show unsatisfiability.
public GetAnswer ( ) : Expr
return Expr

GetCoverDelta() public method

Retrieve the cover of a predicate.
public GetCoverDelta ( int level, FuncDecl predicate ) : Expr
level int
predicate FuncDecl
return Expr

GetNumLevels() public method

Retrieve the number of levels explored for a given predicate.
public GetNumLevels ( FuncDecl predicate ) : uint
predicate FuncDecl
return uint

GetReasonUnknown() public method

Retrieve explanation why fixedpoint engine returned status Unknown.
public GetReasonUnknown ( ) : string
return string

ParseFile() public method

Parse an SMT-LIB2 file with fixedpoint rules. Add the rules to the current fixedpoint context. Return the set of queries in the file.
public ParseFile ( string file ) : Microsoft.Z3.BoolExpr[]
file string
return Microsoft.Z3.BoolExpr[]

ParseString() public method

Similar to ParseFile. Instead it takes as argument a string.
public ParseString ( string s ) : Microsoft.Z3.BoolExpr[]
s string
return Microsoft.Z3.BoolExpr[]

Pop() public method

Backtrack one backtracking point.
Note that an exception is thrown if Pop is called without a corresponding Push
public Pop ( ) : void
return void

Push() public method

Creates a backtracking point.
public Push ( ) : void
return void

Query() public method

Query the fixedpoint solver. A query is a conjunction of constraints. The constraints may include the recursively defined relations. The query is satisfiable if there is an instance of the query variables and a derivation for it. The query is unsatisfiable if there are no derivations satisfying the query variables.
public Query ( BoolExpr query ) : Status
query BoolExpr
return Status

Query() public method

Query the fixedpoint solver. A query is an array of relations. The query is satisfiable if there is an instance of some relation that is non-empty. The query is unsatisfiable if there are no derivations satisfying any of the relations.
public Query ( FuncDecl relations ) : Status
relations FuncDecl
return Status

RegisterRelation() public method

Register predicate as recursive relation.
public RegisterRelation ( FuncDecl f ) : void
f FuncDecl
return void

SetPredicateRepresentation() public method

Instrument the Datalog engine on which table representation to use for recursive predicate.
public SetPredicateRepresentation ( FuncDecl f, Symbol kinds ) : void
f FuncDecl
kinds Symbol
return void

ToString() public method

Retrieve internal string representation of fixedpoint object.
public ToString ( ) : string
return string

ToString() public method

Convert benchmark given as set of axioms, rules and queries to a string.
public ToString ( BoolExpr queries ) : string
queries BoolExpr
return string

UpdateRule() public method

Update named rule into in the fixedpoint solver.
public UpdateRule ( BoolExpr rule, Symbol name ) : void
rule BoolExpr
name Symbol
return void