RESOLVE (REusable SOftware Language with VErification) is a specification and programming language designed for verifying correctness of object oriented programs.
With the VCGenerator refactor almost complete, it is time to integrate the Congruence Class Prover. Below is a check list of things that will need to happen before we can run tests on the new compiler. Currently, the list is incomplete and new items will be added when we encounter them during the refactoring process.
Summary
With the
VCGenerator
refactor almost complete, it is time to integrate theCongruence Class Prover
. Below is a check list of things that will need to happen before we can run tests on the new compiler. Currently, the list is incomplete and new items will be added when we encounter them during the refactoring process.Refactor Check List
CongruenceClassProver
Iterators
Metrics
PerVCProverModel
PExp
hierarchyabsyn
PExp
PSymbol
PLambda
PAlternative
iterators
PExpSubexpressionIterator
PSymbolArgumentIterator
PLambdaBodyIterator
PAlternativesIterator
visitors
PExpVisitor
NestedPExpVisitors
PExpTextRenderingVisitor
Utilities
classesexpressions
ConjunctionOfNormalizedAtomicExpressions
NormalizedAtomicExpressions
theorems
Theorem
(OriginallyTheoremCongruenceClosureImpl
)TheoremPrioritizer
TheoremWithScore
ImmutableVC
(Combined Hampton'sVC
and Mike'sVerificationConditionCongruenceClosureImpl
)Registry
New Changes Check List
FileOutputListener
method for displaying prover resultsIssues to Address