Generate all the summands of the defflexsum.
(defflatsum-flex-summands flat-summands wrld) → (mv flex-summands predicates fixers)
Suitably set the flag that says whether the summand is the last one.
Function:
(defun defflatsum-flex-summands (flat-summands wrld) (declare (xargs :guard (and (true-listp flat-summands) (plist-worldp wrld)))) (let ((__function__ 'defflatsum-flex-summands)) (declare (ignorable __function__)) (b* (((when (endp flat-summands)) (mv nil nil nil)) ((mv flex-summand predicate fixer) (defflatsum-flex-summand (car flat-summands) (endp (cdr flat-summands)) wrld)) ((mv flex-summands predicates fixers) (defflatsum-flex-summands (cdr flat-summands) wrld))) (mv (cons flex-summand flex-summands) (cons predicate predicates) (cons fixer fixers)))))