Formula expressing the guard obligation of a term.
(term-guard-obligation term simplify state) → obligation
The case in which
The
Function:
(defun term-guard-obligation (term simplify state) (declare (xargs :stobjs (state))) (declare (xargs :guard (and (pseudo-termp term) (member-eq simplify '(t :limited))))) (let ((__function__ 'term-guard-obligation)) (declare (ignorable __function__)) (b* (((when (symbolp term)) *t*) ((mv erp val) (guard-obligation term nil nil simplify __function__ state)) ((when erp) (raise "Error ~x0 when computing the guard obligation of ~x1." erp term)) (obligation-clauses (cadr val)) (obligation-formula (termify-clause-set obligation-clauses))) obligation-formula)))