PQ003B

prime_field_polynomial_monic_normalization_represented_degree

Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable

Scaling by the actual leading inverse preserves the annotated nonzero represented degree exactly.

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 k ab ac bb bc L d. ((((L)=S (d)) /\ (((forall fom_index_pfp_normalization_degree_inputcoefficients. (exists fom_gap_pfp_normalization_degree_inputcoefficients_index_bound. fom_gap_pfp_normalization_degree_inputcoefficients_index_bound + S (fom_index_pfp_normalization_degree_inputcoefficients) = L) -> exists fom_value_pfp_normalization_degree_inputcoefficients. ((((exists fom_beta_height_pfp_normalization_degree_inputcoefficients_entry. fom_beta_height_pfp_normalization_degree_inputcoefficients_entry + S (fom_value_pfp_normalization_degree_inputcoefficients) = S ((S (fom_index_pfp_normalization_degree_inputcoefficients)) * ac)) /\ exists fom_beta_quotient_pfp_normalization_degree_inputcoefficients_entry. ab = fom_beta_quotient_pfp_normalization_degree_inputcoefficients_entry * S ((S (fom_index_pfp_normalization_degree_inputcoefficients)) * ac) + (fom_value_pfp_normalization_degree_inputcoefficients))) /\ (exists fom_gap_pfp_normalization_degree_inputcoefficients_value_bound. fom_gap_pfp_normalization_degree_inputcoefficients_value_bound + S (fom_value_pfp_normalization_degree_inputcoefficients) = p))) /\ ((exists pfd_leading_normalization_degree_input. ((((exists ff_h_pfp_normalization_degree_inputentry. ff_h_pfp_normalization_degree_inputentry + S (pfd_leading_normalization_degree_input) = S ((S (0)) * ac)) /\ exists ff_q_pfp_normalization_degree_inputentry. ab = ff_q_pfp_normalization_degree_inputentry * S ((S (0)) * ac) + (pfd_leading_normalization_degree_input))) /\ ((~(pfd_leading_normalization_degree_input=0)))))))))) -> (((~((L) = 0)) /\ (((exists pfm_leading_normalization_degree_source. ((((exists ff_h_pfp_normalization_degree_sourcesource. ff_h_pfp_normalization_degree_sourcesource + S (pfm_leading_normalization_degree_source) = S ((S (0)) * ac)) /\ exists ff_q_pfp_normalization_degree_sourcesource. ab = ff_q_pfp_normalization_degree_sourcesource * S ((S (0)) * ac) + (pfm_leading_normalization_degree_source))) /\ ((((~((pfm_leading_normalization_degree_source) = 0)) /\ ((((exists pfa_gap_normalization_degree_sourceinversemultiplicationleft. pfa_gap_normalization_degree_sourceinversemultiplicationleft + S (pfm_leading_normalization_degree_source) = (p)) /\ (((exists pfa_gap_normalization_degree_sourceinversemultiplicationright. pfa_gap_normalization_degree_sourceinversemultiplicationright + S (k) = (p)) /\ ((((exists pfa_gap_normalization_degree_sourceinversemultiplicationresultbound. pfa_gap_normalization_degree_sourceinversemultiplicationresultbound + S (1) = (p)) /\ ((exists pfa_offset_left_normalization_degree_sourceinversemultiplicationresultcongruence pfa_offset_right_normalization_degree_sourceinversemultiplicationresultcongruence. ((pfm_leading_normalization_degree_source) * (k)) + (p) * pfa_offset_left_normalization_degree_sourceinversemultiplicationresultcongruence = (1) + (p) * pfa_offset_right_normalization_degree_sourceinversemultiplicationresultcongruence))))))))))))))) /\ ((((exists pfa_gap_normalization_degree_sourcescalescalar. pfa_gap_normalization_degree_sourcescalescalar + S (k) = (p)) /\ ((forall pfp_index_normalization_degree_sourcescale. (exists pfa_gap_normalization_degree_sourcescaleindex. pfa_gap_normalization_degree_sourcescaleindex + S (pfp_index_normalization_degree_sourcescale) = (L)) -> exists pfp_source_normalization_degree_sourcescale pfp_value_normalization_degree_sourcescale. ((((exists ff_h_pfp_normalization_degree_sourcescalesource. ff_h_pfp_normalization_degree_sourcescalesource + S (pfp_source_normalization_degree_sourcescale) = S ((S (pfp_index_normalization_degree_sourcescale)) * ac)) /\ exists ff_q_pfp_normalization_degree_sourcescalesource. ab = ff_q_pfp_normalization_degree_sourcescalesource * S ((S (pfp_index_normalization_degree_sourcescale)) * ac) + (pfp_source_normalization_degree_sourcescale))) /\ (((((exists ff_h_pfp_normalization_degree_sourcescaletarget. ff_h_pfp_normalization_degree_sourcescaletarget + S (pfp_value_normalization_degree_sourcescale) = S ((S (pfp_index_normalization_degree_sourcescale)) * bc)) /\ exists ff_q_pfp_normalization_degree_sourcescaletarget. bb = ff_q_pfp_normalization_degree_sourcescaletarget * S ((S (pfp_index_normalization_degree_sourcescale)) * bc) + (pfp_value_normalization_degree_sourcescale))) /\ ((((exists pfa_gap_normalization_degree_sourcescaleoperationleft. pfa_gap_normalization_degree_sourcescaleoperationleft + S (k) = (p)) /\ (((exists pfa_gap_normalization_degree_sourcescaleoperationright. pfa_gap_normalization_degree_sourcescaleoperationright + S (pfp_source_normalization_degree_sourcescale) = (p)) /\ ((((exists pfa_gap_normalization_degree_sourcescaleoperationresultbound. pfa_gap_normalization_degree_sourcescaleoperationresultbound + S (pfp_value_normalization_degree_sourcescale) = (p)) /\ ((exists pfa_offset_left_normalization_degree_sourcescaleoperationresultcongruence pfa_offset_right_normalization_degree_sourcescaleoperationresultcongruence. ((k) * (pfp_source_normalization_degree_sourcescale)) + (p) * pfa_offset_left_normalization_degree_sourcescaleoperationresultcongruence = (pfp_value_normalization_degree_sourcescale) + (p) * pfa_offset_right_normalization_degree_sourcescaleoperationresultcongruence)))))))))))))))))))))) -> ((((L)=S (d)) /\ (((forall fom_index_pfp_normalization_degree_resultcoefficients. (exists fom_gap_pfp_normalization_degree_resultcoefficients_index_bound. fom_gap_pfp_normalization_degree_resultcoefficients_index_bound + S (fom_index_pfp_normalization_degree_resultcoefficients) = L) -> exists fom_value_pfp_normalization_degree_resultcoefficients. ((((exists fom_beta_height_pfp_normalization_degree_resultcoefficients_entry. fom_beta_height_pfp_normalization_degree_resultcoefficients_entry + S (fom_value_pfp_normalization_degree_resultcoefficients) = S ((S (fom_index_pfp_normalization_degree_resultcoefficients)) * bc)) /\ exists fom_beta_quotient_pfp_normalization_degree_resultcoefficients_entry. bb = fom_beta_quotient_pfp_normalization_degree_resultcoefficients_entry * S ((S (fom_index_pfp_normalization_degree_resultcoefficients)) * bc) + (fom_value_pfp_normalization_degree_resultcoefficients))) /\ (exists fom_gap_pfp_normalization_degree_resultcoefficients_value_bound. fom_gap_pfp_normalization_degree_resultcoefficients_value_bound + S (fom_value_pfp_normalization_degree_resultcoefficients) = p))) /\ ((exists pfd_leading_normalization_degree_result. ((((exists ff_h_pfp_normalization_degree_resultentry. ff_h_pfp_normalization_degree_resultentry + S (pfd_leading_normalization_degree_result) = S ((S (0)) * bc)) /\ exists ff_q_pfp_normalization_degree_resultentry. bb = ff_q_pfp_normalization_degree_resultentry * S ((S (0)) * bc) + (pfd_leading_normalization_degree_result))) /\ ((~(pfd_leading_normalization_degree_result=0))))))))))

Constructive proof overview

Generated structural guide

Scaling by the actual leading inverse preserves the annotated nonzero represented degree exactly.

The unchanged tactic script uses 2 declared prerequisites and contains 27 exact native proof lines.

Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable

Proof neighborhood

Direct dependencies

Direct 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

27 script commands · 4 reading checkpoints · 0 local claims

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

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro p
  2. L2
    intro k
  3. L3
    intro ab
  4. L4
    intro ac
  5. L5
    intro bb
  6. L6
    intro bc
  7. L7
    intro L
  8. L8
    intro d
  9. L9
    intro hd
  10. L10
    intro h
02Separate the logical casesL11–11

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L11
    cases hd
03Use earlier factsL12–21

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L12
    specialize prime_field_polynomial_monic_represented_degree (p)
  2. L13
    specialize prime_field_polynomial_monic_represented_degree (bb)
  3. L14
    specialize prime_field_polynomial_monic_represented_degree (bc)
  4. L15
    specialize prime_field_polynomial_monic_represented_degree (L)
  5. L16
    specialize prime_field_polynomial_monic_represented_degree (d)
  6. L17
    apply prime_field_polynomial_monic_represented_degree
  7. L18
    specialize prime_field_polynomial_monic_normalization_monic (p)
  8. L19
    specialize prime_field_polynomial_monic_normalization_monic (k)
  9. L20
    specialize prime_field_polynomial_monic_normalization_monic (ab)
  10. L21
    specialize prime_field_polynomial_monic_normalization_monic (ac)
04Use earlier factsL22–27

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L22
    specialize prime_field_polynomial_monic_normalization_monic (bb)
  2. L23
    specialize prime_field_polynomial_monic_normalization_monic (bc)
  3. L24
    specialize prime_field_polynomial_monic_normalization_monic (L)
  4. L25
    apply prime_field_polynomial_monic_normalization_monic
  5. L26
    exact h
  6. L27
    exact hd_left

Library-wide reading audit

Original exact command ledger · 27 lines
  1. 0001intro p
  2. 0002intro k
  3. 0003intro ab
  4. 0004intro ac
  5. 0005intro bb
  6. 0006intro bc
  7. 0007intro L
  8. 0008intro d
  9. 0009intro hd
  10. 0010intro h
  11. 0011cases hd
  12. 0012specialize prime_field_polynomial_monic_represented_degree (p)
  13. 0013specialize prime_field_polynomial_monic_represented_degree (bb)
  14. 0014specialize prime_field_polynomial_monic_represented_degree (bc)
  15. 0015specialize prime_field_polynomial_monic_represented_degree (L)
  16. 0016specialize prime_field_polynomial_monic_represented_degree (d)
  17. 0017apply prime_field_polynomial_monic_represented_degree
  18. 0018specialize prime_field_polynomial_monic_normalization_monic (p)
  19. 0019specialize prime_field_polynomial_monic_normalization_monic (k)
  20. 0020specialize prime_field_polynomial_monic_normalization_monic (ab)
  21. 0021specialize prime_field_polynomial_monic_normalization_monic (ac)
  22. 0022specialize prime_field_polynomial_monic_normalization_monic (bb)
  23. 0023specialize prime_field_polynomial_monic_normalization_monic (bc)
  24. 0024specialize prime_field_polynomial_monic_normalization_monic (L)
  25. 0025apply prime_field_polynomial_monic_normalization_monic
  26. 0026exact h
  27. 0027exact hd_left