FTY version of remove-equal-formals-actuals.
(fty-remove-equal-formals-actuals formals actuals) → (mv new-formals new-actuals)
Function:
(defun fty-remove-equal-formals-actuals (formals actuals) (declare (xargs :guard (and (symbol-listp formals) (pseudo-term-listp actuals)))) (declare (xargs :guard (= (len formals) (len actuals)))) (let ((__function__ 'fty-remove-equal-formals-actuals)) (declare (ignorable __function__)) (remove-equal-formals-actuals formals (pseudo-term-list-fix actuals))))
Theorem:
(defthm symbol-listp-of-fty-remove-equal-formals-actuals.new-formals (implies (symbol-listp formals) (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (symbol-listp new-formals))) :rule-classes :rewrite)
Theorem:
(defthm pseudo-term-listp-of-fty-remove-equal-formals-actuals.new-actuals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (pseudo-term-listp new-actuals)) :rule-classes :rewrite)
Theorem:
(defthm true-listp-of-fty-remove-equal-formals-actuals.new-formals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (true-listp new-formals)) :rule-classes :type-prescription)
Theorem:
(defthm true-listp-of-fty-remove-equal-formals-actuals.new-actuals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (true-listp new-actuals)) :rule-classes :type-prescription)
Theorem:
(defthm len-of-fty-remove-equal-formals-actuals.new-formals-is-new-actuals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (equal (len new-formals) (len new-actuals))))
Theorem:
(defthm len-of-fty-remove-equal-formals-actuals.new-actuals-is-new-formals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (equal (len new-actuals) (len new-formals))))
Theorem:
(defthm pseudo-term-list-count-of-remove-equal-formals-actuals (b* (((mv & new-actuals) (remove-equal-formals-actuals formals actuals))) (implies (pseudo-term-listp actuals) (<= (pseudo-term-list-count new-actuals) (pseudo-term-list-count actuals)))) :rule-classes :linear)
Theorem:
(defthm pseudo-term-list-count-of-fty-remove-equal-formals-actuals (b* (((mv ?new-formals ?new-actuals) (fty-remove-equal-formals-actuals formals actuals))) (<= (pseudo-term-list-count new-actuals) (pseudo-term-list-count actuals))) :rule-classes :linear)