Exact expanded PA statement
forall a b q r d xp yp xn yn. a = b * q + r -> b * xp + r * yp = d + (b * xn + r * yn) -> a * yp + b * (xp + q * yn) = d + (a * yn + b * (xn + q * yp))Structural proof guide
Transport balanced natural Bezout coefficients across one Euclidean division step.
Direct prerequisites: add_assoc, add_comm, mul_add, mul_assoc, add_mul, add_permute_outer. The authored body proceeds by equality transport (1).
Proof neighborhood
Direct dependencies
BT0003 add_assoc BT0002 add_comm BT0007 mul_add BT0008 mul_assoc BT000B add_mul BT0032 add_permute_outerDirect dependents
Formal native tactic body
Dependencies are hypotheses of this body receipt. The focused endpoint audits separately check the complete empty-context certificates.
- 0001
intro a - 0002
intro b - 0003
intro q - 0004
intro r - 0005
intro d - 0006
intro xp - 0007
intro yp - 0008
intro xn - 0009
intro yn - 0010
intro hab - 0011
intro hbez - 0012
rewrite hab - 0013
trans ((b * q) * yp + r * yp) + b * (xp + q * yn) - 0014
congr - 0015
apply add_mul - 0016
refl - 0017
trans ((b * q) * yp + r * yp) + (b * xp + b * (q * yn)) - 0018
congr - 0019
refl - 0020
apply mul_add - 0021
trans ((b * q) * yp + r * yp) + (b * xp + (b * q) * yn) - 0022
congr - 0023
refl - 0024
congr - 0025
refl - 0026
symm - 0027
apply mul_assoc - 0028
trans (b * xp + r * yp) + ((b * q) * yp + (b * q) * yn) - 0029
apply add_permute_outer - 0030
trans (b * xp + r * yp) + ((b * q) * yn + (b * q) * yp) - 0031
congr - 0032
refl - 0033
apply add_comm - 0034
trans (d + (b * xn + r * yn)) + ((b * q) * yn + (b * q) * yp) - 0035
congr - 0036
exact hbez - 0037
refl - 0038
trans d + ((b * xn + r * yn) + ((b * q) * yn + (b * q) * yp)) - 0039
apply add_assoc - 0040
trans d + (((b * q) * yn + r * yn) + (b * xn + (b * q) * yp)) - 0041
congr - 0042
refl - 0043
apply add_permute_outer - 0044
trans d + ((b * q + r) * yn + (b * xn + (b * q) * yp)) - 0045
congr - 0046
refl - 0047
congr - 0048
symm - 0049
apply add_mul - 0050
refl - 0051
trans d + ((b * q + r) * yn + (b * xn + b * (q * yp))) - 0052
congr - 0053
refl - 0054
congr - 0055
refl - 0056
congr - 0057
refl - 0058
apply mul_assoc - 0059
congr - 0060
refl - 0061
congr - 0062
congr - 0063
symm - 0064
exact hab - 0065
refl - 0066
symm - 0067
apply mul_add