Skip to content
Snippets Groups Projects
Commit fb1565ff authored by Navid Roux's avatar Navid Roux :speech_balloon:
Browse files

Update TriangleScrolls.mmt

parent 7c414563
No related branches found
No related tags found
1 merge request!1Added new Scrolls and new Theories
/T Modular scrolls having to do with triangles ❚ /T Modular scrolls having to do with triangles ❚
namespace http://mathhub.info/FrameIT/frameworld ❚ namespace http://mathhub.info/FrameIT/frameworld ❚
fixmeta ?FrameworldMeta ❚ fixmeta ?FrameworldMeta ❚
/T A blueprint problem theory for triangle scrolls /T A blueprint problem theory for triangle scrolls
B B
/| /|
/ | / |
/ | / |
/___| /___|
A C A C
(nicer image: https://en.wikipedia.org/wiki/Right_triangle#/media/File:Rtriangle.svg) (nicer image: https://en.wikipedia.org/wiki/Right_triangle#/media/File:Rtriangle.svg)
theory TriangleProblem = theory TriangleProblem =
A: point ❘ meta ?MetaAnnotations?label "A" ❙ A: point ❘ meta ?MetaAnnotations?label "A" ❙
B: point ❘ meta ?MetaAnnotations?label "B"❙ B: point ❘ meta ?MetaAnnotations?label "B"❙
C: point ❘ meta ?MetaAnnotations?label "C"❙ C: point ❘ meta ?MetaAnnotations?label "C"❙
/T A blueprint problem theory for triangle scrolls that require a right angle /T A blueprint problem theory for triangle scrolls that require a right angle
We use ?TriangleScroll_GeneralProblem and demand the angle at C to be 90° ❚ We use ?TriangleScroll_GeneralProblem and demand the angle at C to be 90° ❚
theory TriangleProblem_RightAngleAtC = theory TriangleProblem_RightAngleAtC =
include ?TriangleProblem ❙ include ?TriangleProblem ❙
rightAngleC rightAngleC
: ⊦ ( ∠ B,C,A ) ≐ 90.0 ❘ : ⊦ ( ∠ B,C,A ) ≐ 90.0 ❘
meta ?MetaAnnotations?label s"⊾${lverb C}" ❘ meta ?MetaAnnotations?label s"⊾${lverb C}" ❘
meta ?MetaAnnotations?description s"${lverb A C} ⟂ ${lverb B C}: right angle at ${lverb C} as enclosed by legs ${lverb A C} and ${lverb B C}." meta ?MetaAnnotations?description s"${lverb A C} ⟂ ${lverb B C}: right angle at ${lverb C} as enclosed by legs ${lverb A C} and ${lverb B C}."
theory TriangleProblem_AngleAtA = theory TriangleProblem_AngleAtA =
include ?TriangleProblem ❙ include ?TriangleProblem ❙
angleA angleA
: Σ α: ℝ. ⊦ ( ∠ B,A,C ) ≐ α ❘ : Σ α: ℝ. ⊦ ( ∠ B,A,C ) ≐ α ❘
meta ?MetaAnnotations?label s"∠${lverb B A C}" ❘ meta ?MetaAnnotations?label s"∠${lverb B A C}" ❘
meta ?MetaAnnotations?description s"Angle at ${lverb A} as enclosed by legs ${lverb A B} and ${lverb A C}" meta ?MetaAnnotations?description s"Angle at ${lverb A} as enclosed by legs ${lverb A B} and ${lverb A C}"
theory TriangleProblem_AngleAtB = theory TriangleProblem_AngleAtB =
include ?TriangleProblem ❙ include ?TriangleProblem ❙
angleB angleB
: Σ β: ℝ. ⊦ ( ∠ A,B,C ) ≐ β ❘ : Σ β: ℝ. ⊦ ( ∠ A,B,C ) ≐ β ❘
meta ?MetaAnnotations?label s"∠${lverb A B C}" ❘ meta ?MetaAnnotations?label s"∠${lverb A B C}" ❘
meta ?MetaAnnotations?description s"Angle at ${lverb B}" meta ?MetaAnnotations?description s"Angle at ${lverb B}"
theory AngleSum = theory AngleSum =
meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙ meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙
meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙ meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙
theory Problem = theory Problem =
include ?TriangleProblem ❙ include ?TriangleProblem ❙
include ?TriangleProblem_AngleAtA ❙ include ?TriangleProblem_AngleAtA ❙
include ?TriangleProblem_AngleAtB ❙ include ?TriangleProblem_AngleAtB ❙
theory Solution = theory Solution =
include ?AngleSum/Problem ❙ include ?AngleSum/Problem ❙
angleC angleC
: Σ γ: ℝ. ⊦ ( ∠ B,C,A ) ≐ γ ❘ : Σ γ: ℝ. ⊦ ( ∠ B,C,A ) ≐ γ ❘
= ⟨180.0 - (πl angleA) - (πl angleB), sketch "By sum of interior angles = 180° in triangles"⟩ ❘ = ⟨180.0 - (πl angleA) - (πl angleB), sketch "By sum of interior angles = 180° in triangles"⟩ ❘
meta ?MetaAnnotations?label s"∠${lverb B C A}" ❘ meta ?MetaAnnotations?label s"∠${lverb B C A}" ❘
meta ?MetaAnnotations?description s"The deduced angle by calculating 180° - ${lverb angleA} - ${lverb angleB}" meta ?MetaAnnotations?description s"The deduced angle by calculating 180° - ${lverb angleA} - ${lverb angleB}"
// the description verbalizes angleC, hence must come after its declaration ❙ // the description verbalizes angleC, hence must come after its declaration ❙
meta ?MetaAnnotations?label "AngleSum" ❙ meta ?MetaAnnotations?label "AngleSum" ❙
meta ?MetaAnnotations?description s"Given a triangle △${lverb A B C} and two known angles, we can deduce the missing angle by: ${lverb angleC} = 180° - ${lverb angleA} - ${lverb angleB}." ❙ meta ?MetaAnnotations?description s"Given a triangle △${lverb A B C} and two known angles, we can deduce the missing angle by: ${lverb angleC} = 180° - ${lverb angleA} - ${lverb angleB}." ❙
theory OppositeLen = theory OppositeLen =
meta ?MetaAnnotations?problemTheory ?OppositeLen/Problem ❙ meta ?MetaAnnotations?problemTheory ?OppositeLen/Problem ❙
meta ?MetaAnnotations?solutionTheory ?OppositeLen/Solution ❙ meta ?MetaAnnotations?solutionTheory ?OppositeLen/Solution ❙
theory Problem = theory Problem =
include ?TriangleProblem_RightAngleAtC ❙ include ?TriangleProblem_RightAngleAtC ❙
distanceBC distanceBC
: Σ x:ℝ . ⊦ ( d- B C ) ≐ x ❘ : Σ x:ℝ . ⊦ ( d- B C ) ≐ x ❘
meta ?MetaAnnotations?label s"${lverb B C}" ❘ meta ?MetaAnnotations?label s"${lverb B C}" ❘
meta ?MetaAnnotations?description s"Length of leg ${lverb B C}" meta ?MetaAnnotations?description s"Length of leg ${lverb B C}"
include ?TriangleProblem_AngleAtB ❙ include ?TriangleProblem_AngleAtB ❙
theory Solution = theory Solution =
include ?OppositeLen/Problem ❙ include ?OppositeLen/Problem ❙
deducedLineCA deducedLineCA
: Σ x:ℝ . ⊦ (d- C A) ≐ x ❘ : Σ x:ℝ . ⊦ (d- C A) ≐ x ❘
= ⟨(tan (πl angleB)) ⋅ (πl distanceBC), sketch "OppositeLen Scroll"⟩ ❘ = ⟨(tan (πl angleB)) ⋅ (πl distanceBC), sketch "OppositeLen Scroll"⟩ ❘
meta ?MetaAnnotations?label s"${lverb C A}" ❘ meta ?MetaAnnotations?label s"${lverb C A}" ❘
meta ?MetaAnnotations?description s"The deduced length of the line ${lverb C A}" meta ?MetaAnnotations?description s"The deduced length of the line ${lverb C A}"
// the description verbalizes deducedLineCA, hence must come after its declaration ❙ // the description verbalizes deducedLineCA, hence must come after its declaration ❙
meta ?MetaAnnotations?label "OppositeLen" ❙ meta ?MetaAnnotations?label "OppositeLen" ❙
meta ?MetaAnnotations?description s"Given a triangle △${lverb A B C} right-angled at ⊾${lverb C}, the opposide side has length ${lverb deducedLineCA} = tan(${lverb angleB}) ⋅ ${lverb B C}." ❙ meta ?MetaAnnotations?description s"Given a triangle △${lverb A B C} right-angled at ⊾${lverb C}, the opposite side has length ${lverb deducedLineCA} = tan(${lverb angleB}) ⋅ ${lverb B C}." ❙
// Doesn't typecheck, not sure why ❚ // Doesn't typecheck, not sure why ❚
// theory Pythagoras = // theory Pythagoras =
meta ?MetaAnnotations?problemTheory ?Pythagoras/Problem ❙ meta ?MetaAnnotations?problemTheory ?Pythagoras/Problem ❙
meta ?MetaAnnotations?solutionTheory ?Pythagoras/Solution ❙ meta ?MetaAnnotations?solutionTheory ?Pythagoras/Solution ❙
theory Problem = theory Problem =
include ?TriangleScroll_RightAngledProblem ❙ include ?TriangleScroll_RightAngledProblem ❙
distanceAC distanceAC
: Σ x:ℝ. ⊦ (d- A C) ≐ x ❘ : Σ x:ℝ. ⊦ (d- A C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg AC" meta ?MetaAnnotations?description "Length of leg AC"
distanceBC distanceBC
: Σ x:ℝ. ⊦ (d- B C) ≐ x ❘ : Σ x:ℝ. ⊦ (d- B C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg BC" meta ?MetaAnnotations?description "Length of leg BC"
// theory Solution = // theory Solution =
include ?Pythagoras/Problem ❙ include ?Pythagoras/Problem ❙
meta ?MetaAnnotations?label "Pythagoras" ❙ meta ?MetaAnnotations?label "Pythagoras" ❙
meta ?MetaAnnotations?description "Given a ABC right-angled at C and lengths of both legs, we can compute the length of the hypotenuse via Pythagora's theorem" ❙ meta ?MetaAnnotations?description "Given a ABC right-angled at C and lengths of both legs, we can compute the length of the hypotenuse via Pythagora's theorem" ❙
deducedHypotenuse deducedHypotenuse
: Σ x:ℝ. ⊦ (d- A B) ≐ x ❘ : Σ x:ℝ. ⊦ (d- A B) ≐ x ❘
= ⟨√ ((πl distanceAC) ⋅ (πl distanceAC) + (πl distanceBC) ⋅ (πl distanceBC)), = ⟨√ ((πl distanceAC) ⋅ (πl distanceAC) + (πl distanceBC) ⋅ (πl distanceBC)),
sketch "By Pythagora's theorem"⟩ ❘ sketch "By Pythagora's theorem"⟩ ❘
meta ?MetaAnnotations?description "Deduced length of hypotenuse AB" meta ?MetaAnnotations?description "Deduced length of hypotenuse AB"
// ❚ // ❚
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment