Initial flattening environment.
This only contains the prime and the curve and the curve order (scalar-prime), and no constants.
Function:
(defun init-fenv (curve) (declare (xargs :guard (curvep curve))) (let ((__function__ 'init-fenv)) (declare (ignorable __function__)) (make-fenv :constants nil :curve curve)))
Theorem:
(defthm fenvp-of-init-fenv (b* ((env (init-fenv curve))) (fenvp env)) :rule-classes :rewrite)
Theorem:
(defthm init-fenv-of-curve-fix-curve (equal (init-fenv (curve-fix curve)) (init-fenv curve)))
Theorem:
(defthm init-fenv-curve-equiv-congruence-on-curve (implies (curve-equiv curve curve-equiv) (equal (init-fenv curve) (init-fenv curve-equiv))) :rule-classes :congruence)