Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Exact expanded first-order arithmetic statement
forall p a b k ab ac xb xc yb yc ub uc vb vc l. (((exists pfa_gap_scalar_distribute_sumleft. pfa_gap_scalar_distribute_sumleft + S (a) = (p)) /\ (((exists pfa_gap_scalar_distribute_sumright. pfa_gap_scalar_distribute_sumright + S (b) = (p)) /\ ((((exists pfa_gap_scalar_distribute_sumresultbound. pfa_gap_scalar_distribute_sumresultbound + S (k) = (p)) /\ ((exists pfa_offset_left_scalar_distribute_sumresultcongruence pfa_offset_right_scalar_distribute_sumresultcongruence. ((a) + (b)) + (p) * pfa_offset_left_scalar_distribute_sumresultcongruence = (k) + (p) * pfa_offset_right_scalar_distribute_sumresultcongruence))))))))) -> (((exists pfa_gap_scalar_distribute_leftscalar. pfa_gap_scalar_distribute_leftscalar + S (k) = (p)) /\ ((forall pfp_index_scalar_distribute_left. (exists pfa_gap_scalar_distribute_leftindex. pfa_gap_scalar_distribute_leftindex + S (pfp_index_scalar_distribute_left) = (l)) -> exists pfp_source_scalar_distribute_left pfp_value_scalar_distribute_left. ((((exists ff_h_pfp_scalar_distribute_leftsource. ff_h_pfp_scalar_distribute_leftsource + S (pfp_source_scalar_distribute_left) = S ((S (pfp_index_scalar_distribute_left)) * ac)) /\ exists ff_q_pfp_scalar_distribute_leftsource. ab = ff_q_pfp_scalar_distribute_leftsource * S ((S (pfp_index_scalar_distribute_left)) * ac) + (pfp_source_scalar_distribute_left))) /\ (((((exists ff_h_pfp_scalar_distribute_lefttarget. ff_h_pfp_scalar_distribute_lefttarget + S (pfp_value_scalar_distribute_left) = S ((S (pfp_index_scalar_distribute_left)) * uc)) /\ exists ff_q_pfp_scalar_distribute_lefttarget. ub = ff_q_pfp_scalar_distribute_lefttarget * S ((S (pfp_index_scalar_distribute_left)) * uc) + (pfp_value_scalar_distribute_left))) /\ ((((exists pfa_gap_scalar_distribute_leftoperationleft. pfa_gap_scalar_distribute_leftoperationleft + S (k) = (p)) /\ (((exists pfa_gap_scalar_distribute_leftoperationright. pfa_gap_scalar_distribute_leftoperationright + S (pfp_source_scalar_distribute_left) = (p)) /\ ((((exists pfa_gap_scalar_distribute_leftoperationresultbound. pfa_gap_scalar_distribute_leftoperationresultbound + S (pfp_value_scalar_distribute_left) = (p)) /\ ((exists pfa_offset_left_scalar_distribute_leftoperationresultcongruence pfa_offset_right_scalar_distribute_leftoperationresultcongruence. ((k) * (pfp_source_scalar_distribute_left)) + (p) * pfa_offset_left_scalar_distribute_leftoperationresultcongruence = (pfp_value_scalar_distribute_left) + (p) * pfa_offset_right_scalar_distribute_leftoperationresultcongruence))))))))))))))))) -> (((exists pfa_gap_scalar_distribute_ascalar. pfa_gap_scalar_distribute_ascalar + S (a) = (p)) /\ ((forall pfp_index_scalar_distribute_a. (exists pfa_gap_scalar_distribute_aindex. pfa_gap_scalar_distribute_aindex + S (pfp_index_scalar_distribute_a) = (l)) -> exists pfp_source_scalar_distribute_a pfp_value_scalar_distribute_a. ((((exists ff_h_pfp_scalar_distribute_asource. ff_h_pfp_scalar_distribute_asource + S (pfp_source_scalar_distribute_a) = S ((S (pfp_index_scalar_distribute_a)) * ac)) /\ exists ff_q_pfp_scalar_distribute_asource. ab = ff_q_pfp_scalar_distribute_asource * S ((S (pfp_index_scalar_distribute_a)) * ac) + (pfp_source_scalar_distribute_a))) /\ (((((exists ff_h_pfp_scalar_distribute_atarget. ff_h_pfp_scalar_distribute_atarget + S (pfp_value_scalar_distribute_a) = S ((S (pfp_index_scalar_distribute_a)) * xc)) /\ exists ff_q_pfp_scalar_distribute_atarget. xb = ff_q_pfp_scalar_distribute_atarget * S ((S (pfp_index_scalar_distribute_a)) * xc) + (pfp_value_scalar_distribute_a))) /\ ((((exists pfa_gap_scalar_distribute_aoperationleft. pfa_gap_scalar_distribute_aoperationleft + S (a) = (p)) /\ (((exists pfa_gap_scalar_distribute_aoperationright. pfa_gap_scalar_distribute_aoperationright + S (pfp_source_scalar_distribute_a) = (p)) /\ ((((exists pfa_gap_scalar_distribute_aoperationresultbound. pfa_gap_scalar_distribute_aoperationresultbound + S (pfp_value_scalar_distribute_a) = (p)) /\ ((exists pfa_offset_left_scalar_distribute_aoperationresultcongruence pfa_offset_right_scalar_distribute_aoperationresultcongruence. ((a) * (pfp_source_scalar_distribute_a)) + (p) * pfa_offset_left_scalar_distribute_aoperationresultcongruence = (pfp_value_scalar_distribute_a) + (p) * pfa_offset_right_scalar_distribute_aoperationresultcongruence))))))))))))))))) -> (((exists pfa_gap_scalar_distribute_bscalar. pfa_gap_scalar_distribute_bscalar + S (b) = (p)) /\ ((forall pfp_index_scalar_distribute_b. (exists pfa_gap_scalar_distribute_bindex. pfa_gap_scalar_distribute_bindex + S (pfp_index_scalar_distribute_b) = (l)) -> exists pfp_source_scalar_distribute_b pfp_value_scalar_distribute_b. ((((exists ff_h_pfp_scalar_distribute_bsource. ff_h_pfp_scalar_distribute_bsource + S (pfp_source_scalar_distribute_b) = S ((S (pfp_index_scalar_distribute_b)) * ac)) /\ exists ff_q_pfp_scalar_distribute_bsource. ab = ff_q_pfp_scalar_distribute_bsource * S ((S (pfp_index_scalar_distribute_b)) * ac) + (pfp_source_scalar_distribute_b))) /\ (((((exists ff_h_pfp_scalar_distribute_btarget. ff_h_pfp_scalar_distribute_btarget + S (pfp_value_scalar_distribute_b) = S ((S (pfp_index_scalar_distribute_b)) * yc)) /\ exists ff_q_pfp_scalar_distribute_btarget. yb = ff_q_pfp_scalar_distribute_btarget * S ((S (pfp_index_scalar_distribute_b)) * yc) + (pfp_value_scalar_distribute_b))) /\ ((((exists pfa_gap_scalar_distribute_boperationleft. pfa_gap_scalar_distribute_boperationleft + S (b) = (p)) /\ (((exists pfa_gap_scalar_distribute_boperationright. pfa_gap_scalar_distribute_boperationright + S (pfp_source_scalar_distribute_b) = (p)) /\ ((((exists pfa_gap_scalar_distribute_boperationresultbound. pfa_gap_scalar_distribute_boperationresultbound + S (pfp_value_scalar_distribute_b) = (p)) /\ ((exists pfa_offset_left_scalar_distribute_boperationresultcongruence pfa_offset_right_scalar_distribute_boperationresultcongruence. ((b) * (pfp_source_scalar_distribute_b)) + (p) * pfa_offset_left_scalar_distribute_boperationresultcongruence = (pfp_value_scalar_distribute_b) + (p) * pfa_offset_right_scalar_distribute_boperationresultcongruence))))))))))))))))) -> (forall pfp_index_scalar_distribute_right. (exists pfa_gap_scalar_distribute_rightindex. pfa_gap_scalar_distribute_rightindex + S (pfp_index_scalar_distribute_right) = (l)) -> exists pfp_left_scalar_distribute_right pfp_right_scalar_distribute_right pfp_value_scalar_distribute_right. ((((exists ff_h_pfp_scalar_distribute_rightleft. ff_h_pfp_scalar_distribute_rightleft + S (pfp_left_scalar_distribute_right) = S ((S (pfp_index_scalar_distribute_right)) * xc)) /\ exists ff_q_pfp_scalar_distribute_rightleft. xb = ff_q_pfp_scalar_distribute_rightleft * S ((S (pfp_index_scalar_distribute_right)) * xc) + (pfp_left_scalar_distribute_right))) /\ (((((exists ff_h_pfp_scalar_distribute_rightright. ff_h_pfp_scalar_distribute_rightright + S (pfp_right_scalar_distribute_right) = S ((S (pfp_index_scalar_distribute_right)) * yc)) /\ exists ff_q_pfp_scalar_distribute_rightright. yb = ff_q_pfp_scalar_distribute_rightright * S ((S (pfp_index_scalar_distribute_right)) * yc) + (pfp_right_scalar_distribute_right))) /\ (((((exists ff_h_pfp_scalar_distribute_righttarget. ff_h_pfp_scalar_distribute_righttarget + S (pfp_value_scalar_distribute_right) = S ((S (pfp_index_scalar_distribute_right)) * vc)) /\ exists ff_q_pfp_scalar_distribute_righttarget. vb = ff_q_pfp_scalar_distribute_righttarget * S ((S (pfp_index_scalar_distribute_right)) * vc) + (pfp_value_scalar_distribute_right))) /\ ((((exists pfa_gap_scalar_distribute_rightoperationleft. pfa_gap_scalar_distribute_rightoperationleft + S (pfp_left_scalar_distribute_right) = (p)) /\ (((exists pfa_gap_scalar_distribute_rightoperationright. pfa_gap_scalar_distribute_rightoperationright + S (pfp_right_scalar_distribute_right) = (p)) /\ ((((exists pfa_gap_scalar_distribute_rightoperationresultbound. pfa_gap_scalar_distribute_rightoperationresultbound + S (pfp_value_scalar_distribute_right) = (p)) /\ ((exists pfa_offset_left_scalar_distribute_rightoperationresultcongruence pfa_offset_right_scalar_distribute_rightoperationresultcongruence. ((pfp_left_scalar_distribute_right) + (pfp_right_scalar_distribute_right)) + (p) * pfa_offset_left_scalar_distribute_rightoperationresultcongruence = (pfp_value_scalar_distribute_right) + (p) * pfa_offset_right_scalar_distribute_rightoperationresultcongruence)))))))))))))))) -> (forall mdr_i_pfp_scalar_distribute_result mdr_a_pfp_scalar_distribute_result. (exists mdr_gap_pfp_scalar_distribute_resultb. mdr_gap_pfp_scalar_distribute_resultb + S (mdr_i_pfp_scalar_distribute_result) = (l)) -> (((exists ff_h_mdr_pfp_scalar_distribute_resulto. ff_h_mdr_pfp_scalar_distribute_resulto + S (mdr_a_pfp_scalar_distribute_result) = S ((S (mdr_i_pfp_scalar_distribute_result)) * uc)) /\ exists ff_q_mdr_pfp_scalar_distribute_resulto. ub = ff_q_mdr_pfp_scalar_distribute_resulto * S ((S (mdr_i_pfp_scalar_distribute_result)) * uc) + (mdr_a_pfp_scalar_distribute_result))) -> (((exists ff_h_mdr_pfp_scalar_distribute_resultn. ff_h_mdr_pfp_scalar_distribute_resultn + S (mdr_a_pfp_scalar_distribute_result) = S ((S (mdr_i_pfp_scalar_distribute_result)) * vc)) /\ exists ff_q_mdr_pfp_scalar_distribute_resultn. vb = ff_q_mdr_pfp_scalar_distribute_resultn * S ((S (mdr_i_pfp_scalar_distribute_result)) * vc) + (mdr_a_pfp_scalar_distribute_result))))Constructive proof overview
Generated structural guide
Acting by an actual sum of scalars agrees with adding their separately constructed coefficient actions.
The unchanged tactic script uses 4 declared prerequisites and contains 126 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
beta_at_exists Stable theorem; checked-use authorized prime_field_right_distributive Alpha theorem; checked-use authorized PP0016 prime_field_polynomial_scale_entry PP000E prime_field_polynomial_add_entryDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (2)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–24
04Establish entry_aL25–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L25
have entry_a : exists z. (((exists ff_h_pfp_scalar_distribute_choicea. ff_h_pfp_scalar_distribute_choicea + S (z) = S ((S (i)) * ac)) /\ exists ff_q_pfp_scalar_distribute_choicea. ab = ff_q_pfp_scalar_distribute_choicea * S ((S (i)) * ac) + (z))) - L26
specialize beta_at_exists (ab) - L27
specialize beta_at_exists (ac) - L28
specialize beta_at_exists (i) - L29
apply beta_at_exists
05Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases entry_a
06Establish entry_xL31–35
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L31
have entry_x : exists z. (((exists ff_h_pfp_scalar_distribute_choicex. ff_h_pfp_scalar_distribute_choicex + S (z) = S ((S (i)) * xc)) /\ exists ff_q_pfp_scalar_distribute_choicex. xb = ff_q_pfp_scalar_distribute_choicex * S ((S (i)) * xc) + (z))) - L32
specialize beta_at_exists (xb) - L33
specialize beta_at_exists (xc) - L34
specialize beta_at_exists (i) - L35
apply beta_at_exists
07Separate the logical casesL36–36
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L36
cases entry_x
08Establish entry_yL37–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L37
have entry_y : exists z. (((exists ff_h_pfp_scalar_distribute_choicey. ff_h_pfp_scalar_distribute_choicey + S (z) = S ((S (i)) * yc)) /\ exists ff_q_pfp_scalar_distribute_choicey. yb = ff_q_pfp_scalar_distribute_choicey * S ((S (i)) * yc) + (z))) - L38
specialize beta_at_exists (yb) - L39
specialize beta_at_exists (yc) - L40
specialize beta_at_exists (i) - L41
apply beta_at_exists
09Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
cases entry_y
10Establish entry_vL43–47
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L43
have entry_v : exists z. (((exists ff_h_pfp_scalar_distribute_choicev. ff_h_pfp_scalar_distribute_choicev + S (z) = S ((S (i)) * vc)) /\ exists ff_q_pfp_scalar_distribute_choicev. vb = ff_q_pfp_scalar_distribute_choicev * S ((S (i)) * vc) + (z))) - L44
specialize beta_at_exists (vb) - L45
specialize beta_at_exists (vc) - L46
specialize beta_at_exists (i) - L47
apply beta_at_exists
11Separate the logical casesL48–48
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L48
cases entry_v
12Establish heqL49–58
Establish this local claim before using it. It is not an additional assumption.
- L49
have heq : r=x3 - L50
specialize prime_field_right_distributive (p) - L51
specialize prime_field_right_distributive (x) - L52
specialize prime_field_right_distributive (a) - L53
specialize prime_field_right_distributive (b) - L54
specialize prime_field_right_distributive (k) - L55
specialize prime_field_right_distributive (x1) - L56
specialize prime_field_right_distributive (x2) - L57
specialize prime_field_right_distributive (r) - L58
specialize prime_field_right_distributive (x3)
13Use earlier factsL59–68
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L59
apply prime_field_right_distributive - L60
exact hsum - L61
specialize prime_field_polynomial_scale_entry (p) - L62
specialize prime_field_polynomial_scale_entry (k) - L63
specialize prime_field_polynomial_scale_entry (ab) - L64
specialize prime_field_polynomial_scale_entry (ac) - L65
specialize prime_field_polynomial_scale_entry (ub) - L66
specialize prime_field_polynomial_scale_entry (uc) - L67
specialize prime_field_polynomial_scale_entry (l) - L68
specialize prime_field_polynomial_scale_entry (i)
14Use earlier factsL69–78
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L69
specialize prime_field_polynomial_scale_entry (x) - L70
specialize prime_field_polynomial_scale_entry (r) - L71
apply prime_field_polynomial_scale_entry - L72
exact hleft - L73
exact hi - L74
exact entry_a_witness - L75
exact hr - L76
specialize prime_field_polynomial_scale_entry (p) - L77
specialize prime_field_polynomial_scale_entry (a) - L78
specialize prime_field_polynomial_scale_entry (ab)
15Use earlier factsL79–88
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L79
specialize prime_field_polynomial_scale_entry (ac) - L80
specialize prime_field_polynomial_scale_entry (xb) - L81
specialize prime_field_polynomial_scale_entry (xc) - L82
specialize prime_field_polynomial_scale_entry (l) - L83
specialize prime_field_polynomial_scale_entry (i) - L84
specialize prime_field_polynomial_scale_entry (x) - L85
specialize prime_field_polynomial_scale_entry (x1) - L86
apply prime_field_polynomial_scale_entry - L87
exact hfirst - L88
exact hi
16Use earlier factsL89–98
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L89
exact entry_a_witness - L90
exact entry_x_witness - L91
specialize prime_field_polynomial_scale_entry (p) - L92
specialize prime_field_polynomial_scale_entry (b) - L93
specialize prime_field_polynomial_scale_entry (ab) - L94
specialize prime_field_polynomial_scale_entry (ac) - L95
specialize prime_field_polynomial_scale_entry (yb) - L96
specialize prime_field_polynomial_scale_entry (yc) - L97
specialize prime_field_polynomial_scale_entry (l) - L98
specialize prime_field_polynomial_scale_entry (i)
17Use earlier factsL99–108
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L99
specialize prime_field_polynomial_scale_entry (x) - L100
specialize prime_field_polynomial_scale_entry (x2) - L101
apply prime_field_polynomial_scale_entry - L102
exact hsecond - L103
exact hi - L104
exact entry_a_witness - L105
exact entry_y_witness - L106
specialize prime_field_polynomial_add_entry (p) - L107
specialize prime_field_polynomial_add_entry (xb) - L108
specialize prime_field_polynomial_add_entry (xc)
18Use earlier factsL109–118
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L109
specialize prime_field_polynomial_add_entry (yb) - L110
specialize prime_field_polynomial_add_entry (yc) - L111
specialize prime_field_polynomial_add_entry (vb) - L112
specialize prime_field_polynomial_add_entry (vc) - L113
specialize prime_field_polynomial_add_entry (l) - L114
specialize prime_field_polynomial_add_entry (i) - L115
specialize prime_field_polynomial_add_entry (x1) - L116
specialize prime_field_polynomial_add_entry (x2) - L117
specialize prime_field_polynomial_add_entry (x3) - L118
apply prime_field_polynomial_add_entry
19Use earlier factsL119–123
20Calculate and transport equalitiesL124–125
21Use earlier factsL126–126
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L126
exact entry_v_witness
Original exact command ledger · 126 lines
- 0001
intro p - 0002
intro a - 0003
intro b - 0004
intro k - 0005
intro ab - 0006
intro ac - 0007
intro xb - 0008
intro xc - 0009
intro yb - 0010
intro yc - 0011
intro ub - 0012
intro uc - 0013
intro vb - 0014
intro vc - 0015
intro l - 0016
intro hsum - 0017
intro hleft - 0018
intro hfirst - 0019
intro hsecond - 0020
intro hright - 0021
intro i - 0022
intro r - 0023
intro hi - 0024
intro hr - 0025
have entry_a : exists z. (((exists ff_h_pfp_scalar_distribute_choicea. ff_h_pfp_scalar_distribute_choicea + S (z) = S ((S (i)) * ac)) /\ exists ff_q_pfp_scalar_distribute_choicea. ab = ff_q_pfp_scalar_distribute_choicea * S ((S (i)) * ac) + (z))) - 0026
specialize beta_at_exists (ab) - 0027
specialize beta_at_exists (ac) - 0028
specialize beta_at_exists (i) - 0029
apply beta_at_exists - 0030
cases entry_a - 0031
have entry_x : exists z. (((exists ff_h_pfp_scalar_distribute_choicex. ff_h_pfp_scalar_distribute_choicex + S (z) = S ((S (i)) * xc)) /\ exists ff_q_pfp_scalar_distribute_choicex. xb = ff_q_pfp_scalar_distribute_choicex * S ((S (i)) * xc) + (z))) - 0032
specialize beta_at_exists (xb) - 0033
specialize beta_at_exists (xc) - 0034
specialize beta_at_exists (i) - 0035
apply beta_at_exists - 0036
cases entry_x - 0037
have entry_y : exists z. (((exists ff_h_pfp_scalar_distribute_choicey. ff_h_pfp_scalar_distribute_choicey + S (z) = S ((S (i)) * yc)) /\ exists ff_q_pfp_scalar_distribute_choicey. yb = ff_q_pfp_scalar_distribute_choicey * S ((S (i)) * yc) + (z))) - 0038
specialize beta_at_exists (yb) - 0039
specialize beta_at_exists (yc) - 0040
specialize beta_at_exists (i) - 0041
apply beta_at_exists - 0042
cases entry_y - 0043
have entry_v : exists z. (((exists ff_h_pfp_scalar_distribute_choicev. ff_h_pfp_scalar_distribute_choicev + S (z) = S ((S (i)) * vc)) /\ exists ff_q_pfp_scalar_distribute_choicev. vb = ff_q_pfp_scalar_distribute_choicev * S ((S (i)) * vc) + (z))) - 0044
specialize beta_at_exists (vb) - 0045
specialize beta_at_exists (vc) - 0046
specialize beta_at_exists (i) - 0047
apply beta_at_exists - 0048
cases entry_v - 0049
have heq : r=x3 - 0050
specialize prime_field_right_distributive (p) - 0051
specialize prime_field_right_distributive (x) - 0052
specialize prime_field_right_distributive (a) - 0053
specialize prime_field_right_distributive (b) - 0054
specialize prime_field_right_distributive (k) - 0055
specialize prime_field_right_distributive (x1) - 0056
specialize prime_field_right_distributive (x2) - 0057
specialize prime_field_right_distributive (r) - 0058
specialize prime_field_right_distributive (x3) - 0059
apply prime_field_right_distributive - 0060
exact hsum - 0061
specialize prime_field_polynomial_scale_entry (p) - 0062
specialize prime_field_polynomial_scale_entry (k) - 0063
specialize prime_field_polynomial_scale_entry (ab) - 0064
specialize prime_field_polynomial_scale_entry (ac) - 0065
specialize prime_field_polynomial_scale_entry (ub) - 0066
specialize prime_field_polynomial_scale_entry (uc) - 0067
specialize prime_field_polynomial_scale_entry (l) - 0068
specialize prime_field_polynomial_scale_entry (i) - 0069
specialize prime_field_polynomial_scale_entry (x) - 0070
specialize prime_field_polynomial_scale_entry (r) - 0071
apply prime_field_polynomial_scale_entry - 0072
exact hleft - 0073
exact hi - 0074
exact entry_a_witness - 0075
exact hr - 0076
specialize prime_field_polynomial_scale_entry (p) - 0077
specialize prime_field_polynomial_scale_entry (a) - 0078
specialize prime_field_polynomial_scale_entry (ab) - 0079
specialize prime_field_polynomial_scale_entry (ac) - 0080
specialize prime_field_polynomial_scale_entry (xb) - 0081
specialize prime_field_polynomial_scale_entry (xc) - 0082
specialize prime_field_polynomial_scale_entry (l) - 0083
specialize prime_field_polynomial_scale_entry (i) - 0084
specialize prime_field_polynomial_scale_entry (x) - 0085
specialize prime_field_polynomial_scale_entry (x1) - 0086
apply prime_field_polynomial_scale_entry - 0087
exact hfirst - 0088
exact hi - 0089
exact entry_a_witness - 0090
exact entry_x_witness - 0091
specialize prime_field_polynomial_scale_entry (p) - 0092
specialize prime_field_polynomial_scale_entry (b) - 0093
specialize prime_field_polynomial_scale_entry (ab) - 0094
specialize prime_field_polynomial_scale_entry (ac) - 0095
specialize prime_field_polynomial_scale_entry (yb) - 0096
specialize prime_field_polynomial_scale_entry (yc) - 0097
specialize prime_field_polynomial_scale_entry (l) - 0098
specialize prime_field_polynomial_scale_entry (i) - 0099
specialize prime_field_polynomial_scale_entry (x) - 0100
specialize prime_field_polynomial_scale_entry (x2) - 0101
apply prime_field_polynomial_scale_entry - 0102
exact hsecond - 0103
exact hi - 0104
exact entry_a_witness - 0105
exact entry_y_witness - 0106
specialize prime_field_polynomial_add_entry (p) - 0107
specialize prime_field_polynomial_add_entry (xb) - 0108
specialize prime_field_polynomial_add_entry (xc) - 0109
specialize prime_field_polynomial_add_entry (yb) - 0110
specialize prime_field_polynomial_add_entry (yc) - 0111
specialize prime_field_polynomial_add_entry (vb) - 0112
specialize prime_field_polynomial_add_entry (vc) - 0113
specialize prime_field_polynomial_add_entry (l) - 0114
specialize prime_field_polynomial_add_entry (i) - 0115
specialize prime_field_polynomial_add_entry (x1) - 0116
specialize prime_field_polynomial_add_entry (x2) - 0117
specialize prime_field_polynomial_add_entry (x3) - 0118
apply prime_field_polynomial_add_entry - 0119
exact hright - 0120
exact hi - 0121
exact entry_x_witness - 0122
exact entry_y_witness - 0123
exact entry_v_witness - 0124
rewrite heq - 0125
rewrite heq - 0126
exact entry_v_witness