| Modifier and Type | Interface and Description |
|---|---|
static interface |
Proof.LinearRule |
static interface |
Proof.NonLinearRule |
| Modifier and Type | Method and Description |
|---|---|
Proof.Rule |
Proof.State.getRule()
Get the name of the rule used for this step.
|
| Modifier and Type | Method and Description |
|---|---|
Proof.State |
Proof.State.infer(Proof.Rule rule,
Formula truth,
Formula... dependencies)
Infer a new fact from one or more existing facts.
|
Proof.State |
Proof.State.refine(Proof.Rule rule,
WyalFile.VariableDeclaration variable,
WyalFile.Type type,
Formula... dependencies)
Refine the type of a given variable in this state.
|
Proof.State |
Proof.State.subsume(Proof.Rule rule,
Formula truth,
Formula replacement,
Formula... dependencies)
Subsume a given truth by a replacement.
|
| Modifier and Type | Class and Description |
|---|---|
class |
CongruenceClosure
Responsible for implementing congruence closure.
|
class |
EqualityCaseAnalysis |
class |
Simplification |
| Modifier and Type | Class and Description |
|---|---|
class |
InequalityIntroduction
Responsible for emplying a form of transitive closure over
inequalities.
|
| Modifier and Type | Class and Description |
|---|---|
class |
ArrayEqualityCaseAnalysis
Handle (non-)equality between expressions of array type.
|
class |
ArrayIndexAxiom
Responsible for inferring that a given array index expression (e.g.
|
class |
ArrayIndexCaseAnalysis |
class |
ArrayLengthAxiom
Responsible for inferring that a given array length expression (e.g.
|
| Modifier and Type | Class and Description |
|---|---|
class |
FunctionCallAxiom |
class |
MacroExpansion
Responsible for inlining macro invocations from their definitions.
|
| Modifier and Type | Class and Description |
|---|---|
class |
AndElimination
Responsible for breaking conjuncts down into their individual terms.
|
class |
OrElimination
Responsible for eliminating disjuncts by forking the proof into multiple
branches, one for each clause in the disjunct.
|
| Modifier and Type | Class and Description |
|---|---|
class |
ExhaustiveQuantifierInstantiation |
class |
ExistentialElimination
Responsible for eliminating an existential quantifier through
skolemisation.
|
| Modifier and Type | Class and Description |
|---|---|
class |
RecordEqualityCaseAnalysis
Handle (non-)equality between expressions of record type.
|
| Modifier and Type | Class and Description |
|---|---|
class |
TypeTestClosure
Responsible for handling type tests.
|
class |
TypeTestNormalisation
Responsible for normalising type tests involving record accesses.
|
| Modifier and Type | Class and Description |
|---|---|
class |
AbstractClosureRule |
class |
AbstractProofRule |
| Modifier and Type | Field and Description |
|---|---|
protected Proof.Rule |
AbstractProof.AbstractState.rule |
| Modifier and Type | Method and Description |
|---|---|
Proof.Rule |
AbstractProof.AbstractState.getRule() |
| Modifier and Type | Method and Description |
|---|---|
DeltaProof.State |
DeltaProof.State.infer(Proof.Rule rule,
Formula truth,
Formula... dependencies) |
Proof.State |
DeltaProof.State.refine(Proof.Rule rule,
WyalFile.VariableDeclaration variable,
WyalFile.Type type,
Formula... dependencies) |
DeltaProof.State |
DeltaProof.State.subsume(Proof.Rule rule,
Formula from,
Formula to,
Formula... deps)
Subume one formula with one or more formulae.
|
| Constructor and Description |
|---|
AbstractState(AbstractProof<T> proof,
T parent,
Proof.Rule rule,
Formula... dependencies) |
Copyright © 2017. All rights reserved.