Get the y field from a secp256k1-point.
(secp256k1-point->y p) → y
This is an ordinary field accessor created by fty::defprod.
Function:
(defun secp256k1-point->y$inline (p) (declare (xargs :guard (secp256k1-pointp p))) (declare (xargs :guard t)) (let ((acl2::__function__ 'secp256k1-point->y)) (declare (ignorable acl2::__function__)) (mbe :logic (b* ((p (and t p))) (secp256k1-field-fix (std::da-nth 1 p))) :exec (std::da-nth 1 p))))
Theorem:
(defthm secp256k1-fieldp-of-secp256k1-point->y (b* ((y (secp256k1-point->y$inline p))) (secp256k1-fieldp y)) :rule-classes :rewrite)
Theorem:
(defthm secp256k1-point->y$inline-of-secp256k1-point-fix-p (equal (secp256k1-point->y$inline (secp256k1-point-fix p)) (secp256k1-point->y$inline p)))
Theorem:
(defthm secp256k1-point->y$inline-secp256k1-point-equiv-congruence-on-p (implies (secp256k1-point-equiv p p-equiv) (equal (secp256k1-point->y$inline p) (secp256k1-point->y$inline p-equiv))) :rule-classes :congruence)