Z3
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Data Structures | Public Member Functions | Properties
Tactic Class Reference

Tactics are the basic building block for creating custom solvers for specific problem domains. The complete list of tactics may be obtained using Context.NumTactics and Context.TacticNames. It may also be obtained using the command (help-tactics) in the SMT 2.0 front-end. More...

+ Inheritance diagram for Tactic:

Data Structures

class  DecRefQueue
 

Public Member Functions

ApplyResult Apply (Goal g, Params p=null)
 Execute the tactic over the goal. More...
 
- Public Member Functions inherited from Z3Object
void Dispose ()
 Disposes of the underlying native Z3 object. More...
 

Properties

string Help [get]
 A string containing a description of parameters accepted by the tactic. More...
 
ParamDescrs ParameterDescriptions [get]
 Retrieves parameter descriptions for Tactics. More...
 
ApplyResult this[Goal g] [get]
 Apply the tactic to a goal. More...
 
Solver Solver [get]
 Creates a solver that is implemented using the given tactic. More...
 

Detailed Description

Tactics are the basic building block for creating custom solvers for specific problem domains. The complete list of tactics may be obtained using Context.NumTactics and Context.TacticNames. It may also be obtained using the command (help-tactics) in the SMT 2.0 front-end.

Definition at line 32 of file Tactic.cs.

Member Function Documentation

ApplyResult Apply ( Goal  g,
Params  p = null 
)
inline

Execute the tactic over the goal.

Definition at line 60 of file Tactic.cs.

Referenced by Goal.Simplify().

61  {
62  Contract.Requires(g != null);
63  Contract.Ensures(Contract.Result<ApplyResult>() != null);
64 
65  Context.CheckContextMatch(g);
66  if (p == null)
67  return new ApplyResult(Context, Native.Z3_tactic_apply(Context.nCtx, NativeObject, g.NativeObject));
68  else
69  {
70  Context.CheckContextMatch(p);
71  return new ApplyResult(Context, Native.Z3_tactic_apply_ex(Context.nCtx, NativeObject, g.NativeObject, p.NativeObject));
72  }
73  }

Property Documentation

string Help
get

A string containing a description of parameters accepted by the tactic.

Definition at line 38 of file Tactic.cs.

ParamDescrs ParameterDescriptions
get

Retrieves parameter descriptions for Tactics.

Definition at line 52 of file Tactic.cs.

Creates a solver that is implemented using the given tactic.

See also
Context.MkSolver(Tactic)

Definition at line 94 of file Tactic.cs.

ApplyResult this[Goal g]
get

Apply the tactic to a goal.

Definition at line 79 of file Tactic.cs.