/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° ❚
theory TriangleProblem_RightAngleAtC =
include ?TriangleProblem ❙
rightAngleC
: ⊦ ( ∠ B,C,A ) ≐ 90.0 ❘
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}."
❙
❚
theory TriangleProblem_AngleAtA =
include ?TriangleProblem ❙
angleA
: Σ α: ℝ. ⊦ ( ∠ 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}"
❙
❚
theory TriangleProblem_AngleAtB =
include ?TriangleProblem ❙
angleB
: Σ β: ℝ. ⊦ ( ∠ A,B,C ) ≐ β ❘
meta ?MetaAnnotations?label s"∠${lverb A B C}" ❘
meta ?MetaAnnotations?description s"Angle at ${lverb B}"
❙
❚
theory AngleSum =
meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙
meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙
theory Problem =
include ?TriangleProblem ❙
include ?TriangleProblem_AngleAtA ❙
include ?TriangleProblem_AngleAtB ❙
❚
theory Solution =
include ?AngleSum/Problem ❙
angleC
: Σ γ: ℝ. ⊦ ( ∠ B,C,A ) ≐ γ ❘
= ⟨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?description s"The deduced angle by calculating 180° - ${lverb angleA} - ${lverb angleB}"
❙
// the description verbalizes angleC, hence must come after its declaration ❙
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}." ❙
❚
❚
theory OppositeLen =
meta ?MetaAnnotations?problemTheory ?OppositeLen/Problem ❙
meta ?MetaAnnotations?solutionTheory ?OppositeLen/Solution ❙
theory Problem =
include ?TriangleProblem_RightAngleAtC ❙
distanceBC
: Σ x:ℝ . ⊦ ( d- B C ) ≐ x ❘
meta ?MetaAnnotations?label s"${lverb B C}" ❘
meta ?MetaAnnotations?description s"Length of leg ${lverb B C}"
meta ?MetaAnnotations?description s"The deduced length of the line ${lverb C A}"
❙
// the description verbalizes deducedLineCA, hence must come after its declaration ❙
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}." ❙
❚
❚
// Doesn't typecheck, not sure why ❚
// theory Pythagoras =
meta ?MetaAnnotations?problemTheory ?Pythagoras/Problem ❙
meta ?MetaAnnotations?solutionTheory ?Pythagoras/Solution ❙
theory Problem =
include ?TriangleScroll_RightAngledProblem ❙
distanceAC
: Σ x:ℝ. ⊦ (d- A C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg AC"
❙
distanceBC
: Σ x:ℝ. ⊦ (d- B C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg BC"
❙
❚
// theory Solution =
include ?Pythagoras/Problem ❙
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" ❙
/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° ❚
theory TriangleProblem_RightAngleAtC =
include ?TriangleProblem ❙
rightAngleC
: ⊦ ( ∠ B,C,A ) ≐ 90.0 ❘
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}."
❙
❚
theory TriangleProblem_AngleAtA =
include ?TriangleProblem ❙
angleA
: Σ α: ℝ. ⊦ ( ∠ 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}"
❙
❚
theory TriangleProblem_AngleAtB =
include ?TriangleProblem ❙
angleB
: Σ β: ℝ. ⊦ ( ∠ A,B,C ) ≐ β ❘
meta ?MetaAnnotations?label s"∠${lverb A B C}" ❘
meta ?MetaAnnotations?description s"Angle at ${lverb B}"
❙
❚
theory AngleSum =
meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙
meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙
theory Problem =
include ?TriangleProblem ❙
include ?TriangleProblem_AngleAtA ❙
include ?TriangleProblem_AngleAtB ❙
❚
theory Solution =
include ?AngleSum/Problem ❙
angleC
: Σ γ: ℝ. ⊦ ( ∠ B,C,A ) ≐ γ ❘
= ⟨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?description s"The deduced angle by calculating 180° - ${lverb angleA} - ${lverb angleB}"
❙
// the description verbalizes angleC, hence must come after its declaration ❙
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}." ❙
❚
❚
theory OppositeLen =
meta ?MetaAnnotations?problemTheory ?OppositeLen/Problem ❙
meta ?MetaAnnotations?solutionTheory ?OppositeLen/Solution ❙
theory Problem =
include ?TriangleProblem_RightAngleAtC ❙
distanceBC
: Σ x:ℝ . ⊦ ( d- B C ) ≐ x ❘
meta ?MetaAnnotations?label s"${lverb B C}" ❘
meta ?MetaAnnotations?description s"Length of leg ${lverb B C}"
meta ?MetaAnnotations?description s"The deduced length of the line ${lverb C A}"
❙
// the description verbalizes deducedLineCA, hence must come after its declaration ❙
meta ?MetaAnnotations?label "OppositeLen" ❙
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 ❚
// theory Pythagoras =
meta ?MetaAnnotations?problemTheory ?Pythagoras/Problem ❙
meta ?MetaAnnotations?solutionTheory ?Pythagoras/Solution ❙
theory Problem =
include ?TriangleScroll_RightAngledProblem ❙
distanceAC
: Σ x:ℝ. ⊦ (d- A C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg AC"
❙
distanceBC
: Σ x:ℝ. ⊦ (d- B C) ≐ x ❘
meta ?MetaAnnotations?description "Length of leg BC"
❙
❚
// theory Solution =
include ?Pythagoras/Problem ❙
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" ❙