cvc5 / LFSC

LFSC Proof Checker
Other
11 stars 9 forks source link

Apply weak head reduction eagerly to definitions #84

Closed ajreynol closed 2 years ago

ajreynol commented 2 years ago

This addresses a major performance shortcoming in the recent cvc5 proof signatures.

This PR ensures we apply weak head reduction (whr()) on definitions eagerly when they are added to the symbol table (note that nearly every term in the cvc5 signature is an application of an annotated lambda). This ensures that new copies are not generated on demand whenever whr() needs to be computed, e.g. within defeq().