Modifying constructor for proof-obligation structures.
(change-proof-obligation x [:variables <variables>] [:hypotheses <hypotheses>] [:conclusion <conclusion>] [:source-expression <source-expression>])
This is an often useful alternative to make-proof-obligation.
We construct a new proof-obligation structure that is a copy of
This is an ordinary
Macro:
(defmacro change-proof-obligation (x &rest args) (std::change-aggregate 'proof-obligation x args '((:variables . proof-obligation->variables) (:hypotheses . proof-obligation->hypotheses) (:conclusion . proof-obligation->conclusion) (:source-expression . proof-obligation->source-expression)) 'change-proof-obligation 'nil))