class documentation
class ClosedDomainProver(ProverCommandDecorator): (source)
Constructor: ClosedDomainProver(proverCommand)
This is a prover decorator that adds domain closure assumptions before proving.
Method | assumptions |
List the current assumptions. |
Method | goal |
Return the goal |
Method | replace |
Domain = union([e.free()|e.constants() for e in all_expressions]) |
Inherited from ProverCommandDecorator
:
Method | __init__ |
No summary |
Method | decorate |
Modify and return the proof string :param proof_string: str the proof to decorate :param simplify: bool simplify the proof? :return: str |
Method | get |
Return the prover object :return: Prover |
Method | proof |
Return the proof string :param simplify: bool simplify the proof? :return: str |
Method | prove |
Perform the actual proof. |
Instance Variable | _proof |
Undocumented |
Instance Variable | _result |
Undocumented |
Inherited from TheoremToolCommandDecorator
(via ProverCommandDecorator
):
Method | add |
Add new assumptions to the assumption list. |
Method | print |
Print the list of the current assumptions. |
Method | retract |
Retract assumptions from the assumption list. |
Instance Variable | _command |
Undocumented |
- Apply the closed domain assumption to the expression
- Domain = union([e.free()|e.constants() for e in all_expressions])
- translate "exists x.P" to "(z=d1 | z=d2 | ... ) & P.replace(x,z)" OR
- "P.replace(x, d1) | P.replace(x, d2) | ..."
- translate "all x.P" to "P.replace(x, d1) & P.replace(x, d2) & ..."
Parameters | |
ex | Expression |
domain | set of {Variable}s |
Returns | |
Expression |