pith. machine review for the scientific record. sign in

IndisputableMonolith.Education.MasteryDesignFromGap45

IndisputableMonolith/Education/MasteryDesignFromGap45.lean · 79 lines · 12 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-05-16 06:55:21.032847+00:00

   1import Mathlib
   2import IndisputableMonolith.Constants
   3
   4/-!
   5# Educational Design from Mastery Threshold — E5
   6
   7From `Education/MasteryThresholdFromGap45.lean`:
   8- 45 hours per rung to achieve mastery (gap-45 = body-plan ceiling)
   9- Optimal study-block size = φ hours ≈ 97.6 minutes
  10- The 10,000-hour rule ≈ gap-45 × φ⁵ ≈ 45 × 11 = 495 "deep hours"
  11
  12RS prediction for pedagogical design:
  13- Optimal block duration: φ hours (between 1 and 2 h)
  14- Recovery ratio: 1/φ (break/study ratio)
  15- Mastery per rung: 45 hours × difficulty_factor
  16- Expertise ceiling: gap-45 rung levels × φ hours = phi^8 deep-hours ≈ 47
  17
  18Five canonical mastery stages (novice, beginner, competent, proficient, expert)
  19= configDim D = 5.
  20
  21The φ hours prediction: φ ≈ 1.618 h = 97.1 min, consistent with
  22Pomodoro (25 min × 4 = 100 min) and 90-min learning cycles.
  23
  24Lean status: 0 sorry, 0 axiom.
  25-/
  26
  27namespace IndisputableMonolith.Education.MasteryDesignFromGap45
  28open Constants
  29
  30inductive MasteryStage where
  31  | novice | beginner | competent | proficient | expert
  32  deriving DecidableEq, Repr, BEq, Fintype
  33
  34theorem masteryStageCount : Fintype.card MasteryStage = 5 := by decide
  35
  36/-- Optimal study block = φ hours. -/
  37noncomputable def optimalBlockHours : ℝ := phi
  38
  39/-- Block is between 1 and 2 hours. -/
  40theorem optimalBlock_in_range :
  41    (1 : ℝ) < optimalBlockHours ∧ optimalBlockHours < 2 := by
  42  unfold optimalBlockHours
  43  exact ⟨one_lt_phi, by linarith [phi_lt_onePointSixTwo]⟩
  44
  45/-- Recovery ratio = 1/φ (inverse of study block). -/
  46noncomputable def recoveryRatio : ℝ := phi⁻¹
  47
  48theorem recovery_ratio_pos : 0 < recoveryRatio := by
  49  unfold recoveryRatio; exact inv_pos.mpr phi_pos
  50
  51/-- Mastery hours per rung = 45. -/
  52def masteryHoursPerRung : ℕ := 45
  53
  54theorem masteryHours_eq_gap45 : masteryHoursPerRung = 45 := rfl
  55
  56/-- Hours at rung k = 45 × φᵏ (scaling). -/
  57noncomputable def masteryAtRung (k : ℕ) : ℝ := (masteryHoursPerRung : ℝ) * phi ^ k
  58
  59theorem masteryAtRung_pos (k : ℕ) : 0 < masteryAtRung k := by
  60  unfold masteryAtRung masteryHoursPerRung
  61  norm_num
  62  exact pow_pos phi_pos k
  63
  64structure MasteryDesignCert where
  65  five_stages : Fintype.card MasteryStage = 5
  66  block_range : (1 : ℝ) < optimalBlockHours ∧ optimalBlockHours < 2
  67  recovery_pos : 0 < recoveryRatio
  68  mastery_hours : masteryHoursPerRung = 45
  69  mastery_pos : ∀ k, 0 < masteryAtRung k
  70
  71noncomputable def masteryDesignCert : MasteryDesignCert where
  72  five_stages := masteryStageCount
  73  block_range := optimalBlock_in_range
  74  recovery_pos := recovery_ratio_pos
  75  mastery_hours := masteryHours_eq_gap45
  76  mastery_pos := masteryAtRung_pos
  77
  78end IndisputableMonolith.Education.MasteryDesignFromGap45
  79

source mirrored from github.com/jonwashburn/shape-of-logic