Draft — mutable and not usable as a dependency; its citation marks the draft state.

Proof of `The sum of two regular functions on disjoint alphabets`

groundedproofs/Lax916827Proofs/Results.lean · lax-916827

What this proof establishes

no assumptions

Assuming the claims on the left, the claim on the right holds — checked by the archive's pipeline. Proof code is not displayed here.

Read the Lean proof on GitHub

In the paper

Description

The sum of two regular functions on disjoint alphabets is regular (Claim C.2.11, corrected on the empty input), Transducers.sumofregularTransducers.sum_of_regular.

Proof strategy

The source's sumofregularauxsum_of_regular_aux (PartC/SumReg.leanPartC/SumReg.lean, PartC/SumPrime.leanPartC/SumPrime.lean, PartC/SumShape.leanPartC/SumShape.lean) builds the sum prime by prime; the claim as printed is refuted on the empty input by Transducers.notsumofregularnilTransducers.not_sum_of_regular_nil, hence the two clauses on nonempty inputs only.

Attribution

Claim C.2.11 of Transducers, Part C; formalised by Aristotle (Harmonic).