DV0005

arithmetic_signed_table_singleton

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

The base table contains an arbitrary prescribed signed value at index zero, with actual beta and packing witnesses.

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 z. exists F. (exists dst_positive_code_singleton_valid dst_positive_scale_singleton_valid dst_negative_code_singleton_valid dst_negative_scale_singleton_valid. (((F) = (((((dst_positive_code_singleton_valid) + (dst_positive_scale_singleton_valid)) * S ((dst_positive_code_singleton_valid) + (dst_positive_scale_singleton_valid)) + ((dst_positive_scale_singleton_valid) + (dst_positive_scale_singleton_valid))) + (((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) * S ((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) + ((dst_negative_scale_singleton_valid) + (dst_negative_scale_singleton_valid)))) * S ((((dst_positive_code_singleton_valid) + (dst_positive_scale_singleton_valid)) * S ((dst_positive_code_singleton_valid) + (dst_positive_scale_singleton_valid)) + ((dst_positive_scale_singleton_valid) + (dst_positive_scale_singleton_valid))) + (((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) * S ((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) + ((dst_negative_scale_singleton_valid) + (dst_negative_scale_singleton_valid)))) + ((((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) * S ((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) + ((dst_negative_scale_singleton_valid) + (dst_negative_scale_singleton_valid))) + (((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) * S ((dst_negative_code_singleton_valid) + (dst_negative_scale_singleton_valid)) + ((dst_negative_scale_singleton_valid) + (dst_negative_scale_singleton_valid)))))) /\ (forall dst_index_singleton_valid. (exists pvs_le_gap_singleton_validdomain. pvs_le_gap_singleton_validdomain + (dst_index_singleton_valid) = (0)) -> exists dst_positive_singleton_valid dst_negative_singleton_valid dst_value_singleton_valid. ((((exists ff_h_pvs_singleton_validentrypositive. ff_h_pvs_singleton_validentrypositive + S (dst_positive_singleton_valid) = S ((S (dst_index_singleton_valid)) * dst_positive_scale_singleton_valid)) /\ exists ff_q_pvs_singleton_validentrypositive. dst_positive_code_singleton_valid = ff_q_pvs_singleton_validentrypositive * S ((S (dst_index_singleton_valid)) * dst_positive_scale_singleton_valid) + (dst_positive_singleton_valid))) /\ (((((exists ff_h_pvs_singleton_validentrynegative. ff_h_pvs_singleton_validentrynegative + S (dst_negative_singleton_valid) = S ((S (dst_index_singleton_valid)) * dst_negative_scale_singleton_valid)) /\ exists ff_q_pvs_singleton_validentrynegative. dst_negative_code_singleton_valid = ff_q_pvs_singleton_validentrynegative * S ((S (dst_index_singleton_valid)) * dst_negative_scale_singleton_valid) + (dst_negative_singleton_valid))) /\ (exists ge_balance_positive_singleton_validentryvalue ge_balance_negative_singleton_validentryvalue. (((((dst_value_singleton_valid) = 2 * (ge_balance_positive_singleton_validentryvalue) /\ (ge_balance_negative_singleton_validentryvalue) = 0) \/ exists ge_signed_half_singleton_validentryvaluedecode. (((dst_value_singleton_valid) = 2 * ge_signed_half_singleton_validentryvaluedecode + 1 /\ (ge_balance_positive_singleton_validentryvalue) = 0) /\ (ge_balance_negative_singleton_validentryvalue) = S ge_signed_half_singleton_validentryvaluedecode))) /\ ((dst_positive_singleton_valid) + ge_balance_negative_singleton_validentryvalue = (dst_negative_singleton_valid) + ge_balance_positive_singleton_validentryvalue))))))))) /\ (exists dst_positive_code_singleton_value dst_positive_scale_singleton_value dst_negative_code_singleton_value dst_negative_scale_singleton_value dst_positive_singleton_value dst_negative_singleton_value. (((F) = (((((dst_positive_code_singleton_value) + (dst_positive_scale_singleton_value)) * S ((dst_positive_code_singleton_value) + (dst_positive_scale_singleton_value)) + ((dst_positive_scale_singleton_value) + (dst_positive_scale_singleton_value))) + (((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) * S ((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) + ((dst_negative_scale_singleton_value) + (dst_negative_scale_singleton_value)))) * S ((((dst_positive_code_singleton_value) + (dst_positive_scale_singleton_value)) * S ((dst_positive_code_singleton_value) + (dst_positive_scale_singleton_value)) + ((dst_positive_scale_singleton_value) + (dst_positive_scale_singleton_value))) + (((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) * S ((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) + ((dst_negative_scale_singleton_value) + (dst_negative_scale_singleton_value)))) + ((((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) * S ((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) + ((dst_negative_scale_singleton_value) + (dst_negative_scale_singleton_value))) + (((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) * S ((dst_negative_code_singleton_value) + (dst_negative_scale_singleton_value)) + ((dst_negative_scale_singleton_value) + (dst_negative_scale_singleton_value)))))) /\ (((((exists ff_h_pvs_singleton_valuepositive. ff_h_pvs_singleton_valuepositive + S (dst_positive_singleton_value) = S ((S (0)) * dst_positive_scale_singleton_value)) /\ exists ff_q_pvs_singleton_valuepositive. dst_positive_code_singleton_value = ff_q_pvs_singleton_valuepositive * S ((S (0)) * dst_positive_scale_singleton_value) + (dst_positive_singleton_value))) /\ (((((exists ff_h_pvs_singleton_valuenegative. ff_h_pvs_singleton_valuenegative + S (dst_negative_singleton_value) = S ((S (0)) * dst_negative_scale_singleton_value)) /\ exists ff_q_pvs_singleton_valuenegative. dst_negative_code_singleton_value = ff_q_pvs_singleton_valuenegative * S ((S (0)) * dst_negative_scale_singleton_value) + (dst_negative_singleton_value))) /\ (exists ge_balance_positive_singleton_valuevalue ge_balance_negative_singleton_valuevalue. (((((z) = 2 * (ge_balance_positive_singleton_valuevalue) /\ (ge_balance_negative_singleton_valuevalue) = 0) \/ exists ge_signed_half_singleton_valuevaluedecode. (((z) = 2 * ge_signed_half_singleton_valuevaluedecode + 1 /\ (ge_balance_positive_singleton_valuevalue) = 0) /\ (ge_balance_negative_singleton_valuevalue) = S ge_signed_half_singleton_valuevaluedecode))) /\ ((dst_positive_singleton_value) + ge_balance_negative_singleton_valuevalue = (dst_negative_singleton_value) + ge_balance_positive_singleton_valuevalue)))))))))

Constructive proof overview

Generated structural guide

The base table contains an arbitrary prescribed signed value at index zero, with actual beta and packing witnesses.

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

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

Proof neighborhood

Direct dependencies

DV0003 arithmetic_signed_table_extend_at divisor_signed_table_from_components Alpha theorem; checked-use authorized

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

22 script commands · 8 reading checkpoints · 1 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 (1)

Long local formulas use this family’s existing definitions. Each new abbreviation was expanded back to the identical native formula, including its free-variable context. The original edition is preserved below.

01Fix variables and assumptionsL1–1

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

  1. L1
    intro z
02Establish heL2–11

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed table extend at.

  1. L2
    have he : ∃ G. ArithExtend(((0 + 0) · S (0 + 0) + (0 + 0) + ((0 + 0) · S (0 + 0) + (0 + 0))) · S ((0 + 0) · S (0 + 0) + (0 + 0) + ((0 + 0) · S (0 + 0) + (0 + 0))) + ((0 + 0) · S (0 + 0) + (0 + 0) + ((0 + 0) · S (0 + 0) + (0 + 0))),G,0,z)Definitions: ArithExtend
  2. L3
    specialize arithmetic_signed_table_extend_at (0)
  3. L4
    specialize arithmetic_signed_table_extend_at (((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))))
  4. L5
    specialize arithmetic_signed_table_extend_at (0)
  5. L6
    specialize arithmetic_signed_table_extend_at (z)
  6. L7
    apply arithmetic_signed_table_extend_at
  7. L8
    specialize divisor_signed_table_from_components (0)
  8. L9
    specialize divisor_signed_table_from_components (((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))))
  9. L10
    specialize divisor_signed_table_from_components (0)
  10. L11
    specialize divisor_signed_table_from_components (0)
03Use earlier factsL12–14

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

  1. L12
    specialize divisor_signed_table_from_components (0)
  2. L13
    specialize divisor_signed_table_from_components (0)
  3. L14
    apply divisor_signed_table_from_components
04Calculate and transport equalitiesL15–15

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L15
    refl
05Separate the logical casesL16–18

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

  1. L16
    cases he
  2. L17
    cases he_witness
  3. L18
    cases he_witness_right
06Construct an explicit witnessL19–19

Supply the displayed value, then prove that it has the required property.

  1. L19
    exists x
07Separate the logical casesL20–20

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

  1. L20
    split
08Use earlier factsL21–22

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

  1. L21
    exact he_witness_left
  2. L22
    exact he_witness_right_right

Library-wide reading audit

Original exact command ledger · 22 lines
  1. 0001intro z
  2. 0002have he : exists G. (((exists dst_positive_code_singleton_constructtable dst_positive_scale_singleton_constructtable dst_negative_code_singleton_constructtable dst_negative_scale_singleton_constructtable. (((G) = (((((dst_positive_code_singleton_constructtable) + (dst_positive_scale_singleton_constructtable)) * S ((dst_positive_code_singleton_constructtable) + (dst_positive_scale_singleton_constructtable)) + ((dst_positive_scale_singleton_constructtable) + (dst_positive_scale_singleton_constructtable))) + (((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) * S ((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) + ((dst_negative_scale_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)))) * S ((((dst_positive_code_singleton_constructtable) + (dst_positive_scale_singleton_constructtable)) * S ((dst_positive_code_singleton_constructtable) + (dst_positive_scale_singleton_constructtable)) + ((dst_positive_scale_singleton_constructtable) + (dst_positive_scale_singleton_constructtable))) + (((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) * S ((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) + ((dst_negative_scale_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)))) + ((((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) * S ((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) + ((dst_negative_scale_singleton_constructtable) + (dst_negative_scale_singleton_constructtable))) + (((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) * S ((dst_negative_code_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)) + ((dst_negative_scale_singleton_constructtable) + (dst_negative_scale_singleton_constructtable)))))) /\ (forall dst_index_singleton_constructtable. (exists pvs_le_gap_singleton_constructtabledomain. pvs_le_gap_singleton_constructtabledomain + (dst_index_singleton_constructtable) = (0)) -> exists dst_positive_singleton_constructtable dst_negative_singleton_constructtable dst_value_singleton_constructtable. ((((exists ff_h_pvs_singleton_constructtableentrypositive. ff_h_pvs_singleton_constructtableentrypositive + S (dst_positive_singleton_constructtable) = S ((S (dst_index_singleton_constructtable)) * dst_positive_scale_singleton_constructtable)) /\ exists ff_q_pvs_singleton_constructtableentrypositive. dst_positive_code_singleton_constructtable = ff_q_pvs_singleton_constructtableentrypositive * S ((S (dst_index_singleton_constructtable)) * dst_positive_scale_singleton_constructtable) + (dst_positive_singleton_constructtable))) /\ (((((exists ff_h_pvs_singleton_constructtableentrynegative. ff_h_pvs_singleton_constructtableentrynegative + S (dst_negative_singleton_constructtable) = S ((S (dst_index_singleton_constructtable)) * dst_negative_scale_singleton_constructtable)) /\ exists ff_q_pvs_singleton_constructtableentrynegative. dst_negative_code_singleton_constructtable = ff_q_pvs_singleton_constructtableentrynegative * S ((S (dst_index_singleton_constructtable)) * dst_negative_scale_singleton_constructtable) + (dst_negative_singleton_constructtable))) /\ (exists ge_balance_positive_singleton_constructtableentryvalue ge_balance_negative_singleton_constructtableentryvalue. (((((dst_value_singleton_constructtable) = 2 * (ge_balance_positive_singleton_constructtableentryvalue) /\ (ge_balance_negative_singleton_constructtableentryvalue) = 0) \/ exists ge_signed_half_singleton_constructtableentryvaluedecode. (((dst_value_singleton_constructtable) = 2 * ge_signed_half_singleton_constructtableentryvaluedecode + 1 /\ (ge_balance_positive_singleton_constructtableentryvalue) = 0) /\ (ge_balance_negative_singleton_constructtableentryvalue) = S ge_signed_half_singleton_constructtableentryvaluedecode))) /\ ((dst_positive_singleton_constructtable) + ge_balance_negative_singleton_constructtableentryvalue = (dst_negative_singleton_constructtable) + ge_balance_positive_singleton_constructtableentryvalue))))))))) /\ (((forall dst_index_singleton_constructprefix dst_first_singleton_constructprefix dst_second_singleton_constructprefix. (exists pvs_gap_singleton_constructprefixbound. pvs_gap_singleton_constructprefixbound + S (dst_index_singleton_constructprefix) = (0)) -> (exists dst_positive_code_singleton_constructprefixfirst dst_positive_scale_singleton_constructprefixfirst dst_negative_code_singleton_constructprefixfirst dst_negative_scale_singleton_constructprefixfirst dst_positive_singleton_constructprefixfirst dst_negative_singleton_constructprefixfirst. (((((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = (((((dst_positive_code_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst)) * S ((dst_positive_code_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst)) + ((dst_positive_scale_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst))) + (((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) * S ((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) + ((dst_negative_scale_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)))) * S ((((dst_positive_code_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst)) * S ((dst_positive_code_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst)) + ((dst_positive_scale_singleton_constructprefixfirst) + (dst_positive_scale_singleton_constructprefixfirst))) + (((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) * S ((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) + ((dst_negative_scale_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)))) + ((((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) * S ((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) + ((dst_negative_scale_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst))) + (((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) * S ((dst_negative_code_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)) + ((dst_negative_scale_singleton_constructprefixfirst) + (dst_negative_scale_singleton_constructprefixfirst)))))) /\ (((((exists ff_h_pvs_singleton_constructprefixfirstpositive. ff_h_pvs_singleton_constructprefixfirstpositive + S (dst_positive_singleton_constructprefixfirst) = S ((S (dst_index_singleton_constructprefix)) * dst_positive_scale_singleton_constructprefixfirst)) /\ exists ff_q_pvs_singleton_constructprefixfirstpositive. dst_positive_code_singleton_constructprefixfirst = ff_q_pvs_singleton_constructprefixfirstpositive * S ((S (dst_index_singleton_constructprefix)) * dst_positive_scale_singleton_constructprefixfirst) + (dst_positive_singleton_constructprefixfirst))) /\ (((((exists ff_h_pvs_singleton_constructprefixfirstnegative. ff_h_pvs_singleton_constructprefixfirstnegative + S (dst_negative_singleton_constructprefixfirst) = S ((S (dst_index_singleton_constructprefix)) * dst_negative_scale_singleton_constructprefixfirst)) /\ exists ff_q_pvs_singleton_constructprefixfirstnegative. dst_negative_code_singleton_constructprefixfirst = ff_q_pvs_singleton_constructprefixfirstnegative * S ((S (dst_index_singleton_constructprefix)) * dst_negative_scale_singleton_constructprefixfirst) + (dst_negative_singleton_constructprefixfirst))) /\ (exists ge_balance_positive_singleton_constructprefixfirstvalue ge_balance_negative_singleton_constructprefixfirstvalue. (((((dst_first_singleton_constructprefix) = 2 * (ge_balance_positive_singleton_constructprefixfirstvalue) /\ (ge_balance_negative_singleton_constructprefixfirstvalue) = 0) \/ exists ge_signed_half_singleton_constructprefixfirstvaluedecode. (((dst_first_singleton_constructprefix) = 2 * ge_signed_half_singleton_constructprefixfirstvaluedecode + 1 /\ (ge_balance_positive_singleton_constructprefixfirstvalue) = 0) /\ (ge_balance_negative_singleton_constructprefixfirstvalue) = S ge_signed_half_singleton_constructprefixfirstvaluedecode))) /\ ((dst_positive_singleton_constructprefixfirst) + ge_balance_negative_singleton_constructprefixfirstvalue = (dst_negative_singleton_constructprefixfirst) + ge_balance_positive_singleton_constructprefixfirstvalue))))))))) -> (exists dst_positive_code_singleton_constructprefixsecond dst_positive_scale_singleton_constructprefixsecond dst_negative_code_singleton_constructprefixsecond dst_negative_scale_singleton_constructprefixsecond dst_positive_singleton_constructprefixsecond dst_negative_singleton_constructprefixsecond. (((G) = (((((dst_positive_code_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond)) * S ((dst_positive_code_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond)) + ((dst_positive_scale_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond))) + (((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) * S ((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) + ((dst_negative_scale_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)))) * S ((((dst_positive_code_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond)) * S ((dst_positive_code_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond)) + ((dst_positive_scale_singleton_constructprefixsecond) + (dst_positive_scale_singleton_constructprefixsecond))) + (((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) * S ((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) + ((dst_negative_scale_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)))) + ((((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) * S ((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) + ((dst_negative_scale_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond))) + (((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) * S ((dst_negative_code_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)) + ((dst_negative_scale_singleton_constructprefixsecond) + (dst_negative_scale_singleton_constructprefixsecond)))))) /\ (((((exists ff_h_pvs_singleton_constructprefixsecondpositive. ff_h_pvs_singleton_constructprefixsecondpositive + S (dst_positive_singleton_constructprefixsecond) = S ((S (dst_index_singleton_constructprefix)) * dst_positive_scale_singleton_constructprefixsecond)) /\ exists ff_q_pvs_singleton_constructprefixsecondpositive. dst_positive_code_singleton_constructprefixsecond = ff_q_pvs_singleton_constructprefixsecondpositive * S ((S (dst_index_singleton_constructprefix)) * dst_positive_scale_singleton_constructprefixsecond) + (dst_positive_singleton_constructprefixsecond))) /\ (((((exists ff_h_pvs_singleton_constructprefixsecondnegative. ff_h_pvs_singleton_constructprefixsecondnegative + S (dst_negative_singleton_constructprefixsecond) = S ((S (dst_index_singleton_constructprefix)) * dst_negative_scale_singleton_constructprefixsecond)) /\ exists ff_q_pvs_singleton_constructprefixsecondnegative. dst_negative_code_singleton_constructprefixsecond = ff_q_pvs_singleton_constructprefixsecondnegative * S ((S (dst_index_singleton_constructprefix)) * dst_negative_scale_singleton_constructprefixsecond) + (dst_negative_singleton_constructprefixsecond))) /\ (exists ge_balance_positive_singleton_constructprefixsecondvalue ge_balance_negative_singleton_constructprefixsecondvalue. (((((dst_second_singleton_constructprefix) = 2 * (ge_balance_positive_singleton_constructprefixsecondvalue) /\ (ge_balance_negative_singleton_constructprefixsecondvalue) = 0) \/ exists ge_signed_half_singleton_constructprefixsecondvaluedecode. (((dst_second_singleton_constructprefix) = 2 * ge_signed_half_singleton_constructprefixsecondvaluedecode + 1 /\ (ge_balance_positive_singleton_constructprefixsecondvalue) = 0) /\ (ge_balance_negative_singleton_constructprefixsecondvalue) = S ge_signed_half_singleton_constructprefixsecondvaluedecode))) /\ ((dst_positive_singleton_constructprefixsecond) + ge_balance_negative_singleton_constructprefixsecondvalue = (dst_negative_singleton_constructprefixsecond) + ge_balance_positive_singleton_constructprefixsecondvalue))))))))) -> dst_first_singleton_constructprefix = dst_second_singleton_constructprefix) /\ (exists dst_positive_code_singleton_constructlast dst_positive_scale_singleton_constructlast dst_negative_code_singleton_constructlast dst_negative_scale_singleton_constructlast dst_positive_singleton_constructlast dst_negative_singleton_constructlast. (((G) = (((((dst_positive_code_singleton_constructlast) + (dst_positive_scale_singleton_constructlast)) * S ((dst_positive_code_singleton_constructlast) + (dst_positive_scale_singleton_constructlast)) + ((dst_positive_scale_singleton_constructlast) + (dst_positive_scale_singleton_constructlast))) + (((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) * S ((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) + ((dst_negative_scale_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)))) * S ((((dst_positive_code_singleton_constructlast) + (dst_positive_scale_singleton_constructlast)) * S ((dst_positive_code_singleton_constructlast) + (dst_positive_scale_singleton_constructlast)) + ((dst_positive_scale_singleton_constructlast) + (dst_positive_scale_singleton_constructlast))) + (((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) * S ((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) + ((dst_negative_scale_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)))) + ((((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) * S ((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) + ((dst_negative_scale_singleton_constructlast) + (dst_negative_scale_singleton_constructlast))) + (((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) * S ((dst_negative_code_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)) + ((dst_negative_scale_singleton_constructlast) + (dst_negative_scale_singleton_constructlast)))))) /\ (((((exists ff_h_pvs_singleton_constructlastpositive. ff_h_pvs_singleton_constructlastpositive + S (dst_positive_singleton_constructlast) = S ((S (0)) * dst_positive_scale_singleton_constructlast)) /\ exists ff_q_pvs_singleton_constructlastpositive. dst_positive_code_singleton_constructlast = ff_q_pvs_singleton_constructlastpositive * S ((S (0)) * dst_positive_scale_singleton_constructlast) + (dst_positive_singleton_constructlast))) /\ (((((exists ff_h_pvs_singleton_constructlastnegative. ff_h_pvs_singleton_constructlastnegative + S (dst_negative_singleton_constructlast) = S ((S (0)) * dst_negative_scale_singleton_constructlast)) /\ exists ff_q_pvs_singleton_constructlastnegative. dst_negative_code_singleton_constructlast = ff_q_pvs_singleton_constructlastnegative * S ((S (0)) * dst_negative_scale_singleton_constructlast) + (dst_negative_singleton_constructlast))) /\ (exists ge_balance_positive_singleton_constructlastvalue ge_balance_negative_singleton_constructlastvalue. (((((z) = 2 * (ge_balance_positive_singleton_constructlastvalue) /\ (ge_balance_negative_singleton_constructlastvalue) = 0) \/ exists ge_signed_half_singleton_constructlastvaluedecode. (((z) = 2 * ge_signed_half_singleton_constructlastvaluedecode + 1 /\ (ge_balance_positive_singleton_constructlastvalue) = 0) /\ (ge_balance_negative_singleton_constructlastvalue) = S ge_signed_half_singleton_constructlastvaluedecode))) /\ ((dst_positive_singleton_constructlast) + ge_balance_negative_singleton_constructlastvalue = (dst_negative_singleton_constructlast) + ge_balance_positive_singleton_constructlastvalue)))))))))))))
  3. 0003specialize arithmetic_signed_table_extend_at (0)
  4. 0004specialize arithmetic_signed_table_extend_at (((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))))
  5. 0005specialize arithmetic_signed_table_extend_at (0)
  6. 0006specialize arithmetic_signed_table_extend_at (z)
  7. 0007apply arithmetic_signed_table_extend_at
  8. 0008specialize divisor_signed_table_from_components (0)
  9. 0009specialize divisor_signed_table_from_components (((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))))
  10. 0010specialize divisor_signed_table_from_components (0)
  11. 0011specialize divisor_signed_table_from_components (0)
  12. 0012specialize divisor_signed_table_from_components (0)
  13. 0013specialize divisor_signed_table_from_components (0)
  14. 0014apply divisor_signed_table_from_components
  15. 0015refl
  16. 0016cases he
  17. 0017cases he_witness
  18. 0018cases he_witness_right
  19. 0019exists x
  20. 0020split
  21. 0021exact he_witness_left
  22. 0022exact he_witness_right_right