User module:Kingdon/Tau day

This is my proof of Interface: Tau day theorems and Interface: Tau day theorems 2 from Interface:Tau day axioms, as part of the exercises at Help:Tau day. Spoiler alert: if you are hoping to figure out the exercises for yourself, I recommend going to the help page first and only coming back here if you get stuck.

 import (PROPOSITIONS Interface:Classical_propositional_calculus ) import (FIRSTORDER Interface:First-order_logic_with_quantifiability (PROPOSITIONS) ) import (TAU Interface:Tau_day_axioms (PROPOSITIONS FIRSTORDER) )

var (real θ)

thm (TauIsPeriodOfSine   ((sin (θ + (τ))) = (sin θ))  (θ SinePeriod) )

var (real α)

thm (TauIsPeriodOfSineQuarterTurn   ((sin ((α + ((τ) / (4))) + (τ))) = (sin (α + ((τ) / (4)))))  ((α + ((τ) / (4))) SinePeriod) )

thm (CosinePeriodLemma1   ((sin ((θ + ((τ) / (4))) + (τ))) = (sin ((θ + (τ)) + ((τ) / (4))))) ( θ ((τ) / (4)) (τ) Addition23 buildSine ))

thm (CosinePeriodLemma2   ((sin ((θ + ((τ) / (4))) + (τ))) = (cos (θ + (τ)))) ( θ CosinePeriodLemma1

(θ + (τ)) SineShift applyEqualityTransitivity ))

thm (CosinePeriod  ((cos (θ + (τ))) = (cos θ)) ( θ CosinePeriodLemma2 swapEquality

(θ + ((τ) / (4))) SinePeriod applyEqualityTransitivity

θ SineShift applyEqualityTransitivity ))

thm (CosineTau  ((cos (τ)) = (1)) ( (τ) AdditiveIdentityLeft buildCosine swapEquality

(0) CosinePeriod applyEqualityTransitivity

Cosine0 applyEqualityTransitivity ))

export (THEOREMS Interface:Tau_day_theorems (PROPOSITIONS FIRSTORDER) )

thm (Sine2  ((sin ((τ) / (2))) = (0)) ( TauNonnegative (τ) LessEqualReflexivity introduceConjunction

(τ) SineHalfAngle applyModusPonens  That gives us. Now we just need to simplify the right hand side to zero.  CosineTau (1) buildSubtractionLL TwoNotZero buildDivisionRR buildSquareRoot applyEqualityTransitivity  We now have.  (1) SelfSubtraction TwoNotZero buildDivisionRR buildSquareRoot applyEqualityTransitivity  That gives us.  TwoNotZero (2) ZeroNumerator applyModusPonens buildSquareRoot applyEqualityTransitivity  Now we have.  SquareRootZero applyEqualityTransitivity ))

thm (CosineNegative4  ((cos (- ((τ) / (4)))) = (0)) ( Tau4MinusTau2 swapEquality buildCosine

((τ) / (2)) CosineComplement applyEqualityTransitivity

Sine2 applyEqualityTransitivity ))

thm (Cosine4  ((cos ((τ) / (4))) = (0)) ( ((τ) / (4)) CosineNegation swapEquality

CosineNegative4 applyEqualityTransitivity ))

thm (Cosine8  ((cos ((τ) / (8))) = ((√ (2)) / (2))) (  The first step is  (τ) EighthQuarterHalf buildCosine  Now we apply the half angle formula, which is.  NegativeTau2LessEqualTau4 Tau4LessEqualTau2 introduceConjunction

((τ) / (4)) CosineHalfAngle applyModusPonens applyEqualityTransitivity  Now we start simplifying.  Cosine4 (1) buildAdditionLL TwoNotZero buildDivisionRR buildSquareRoot applyEqualityTransitivity  We now have.  (1) AdditiveIdentity TwoNotZero buildDivisionRR buildSquareRoot applyEqualityTransitivity </jh> Now.  SquareRootOneHalf applyEqualityTransitivity ))

thm (Sine8  ((sin ((τ) / (8))) = ((√ (2)) / (2))) ( (τ) QuarterMinusEighth buildSine swapEquality

((τ) / (8)) SineComplement applyEqualityTransitivity

Cosine8 applyEqualityTransitivity ))

export (THEOREMS2 Interface:Tau_day_theorems_2 (PROPOSITIONS FIRSTORDER) ) </jh>