pith. machine review for the scientific record. sign in
lemma

arcosh_arg_ge_one

proved
show as:
view math explainer →
module
IndisputableMonolith.Measurement.KernelMatch
domain
Measurement
line
27 · github
papers citing
none yet

open explainer

Generate a durable explainer page for this declaration.

open lean source

IndisputableMonolith.Measurement.KernelMatch on GitHub at line 27.

browse module

All declarations in this module, on Recognition.

explainer page

Tracked in the explainer inventory; generation is lazy so crawlers do not trigger LLM jobs.

open explainer

depends on

used by

formal source

  24  1 + 2 * Real.cot ϑ + Real.sqrt ((1 + 2 * Real.cot ϑ) ^ 2 - 1)
  25
  26/-- The argument to arcosh is at least 1 for ϑ ∈ [0, π/2] -/
  27lemma arcosh_arg_ge_one (ϑ : ℝ) (hϑ : 0 ≤ ϑ ∧ ϑ ≤ π/2) :
  28  1 ≤ 1 + 2 * Real.cot ϑ := by
  29  have hsin : 0 ≤ Real.sin ϑ := by
  30    have hmem : ϑ ∈ Set.Icc (0 : ℝ) Real.pi := by
  31      constructor
  32      · exact hϑ.1
  33      · have hpi2_le_pi : (Real.pi / 2 : ℝ) ≤ Real.pi := by nlinarith [Real.pi_pos]
  34        exact le_trans hϑ.2 hpi2_le_pi
  35    simpa using Real.sin_nonneg_of_mem_Icc hmem
  36  have hcos : 0 ≤ Real.cos ϑ := by
  37    have hmem : ϑ ∈ Set.Icc (-(Real.pi / 2)) (Real.pi / 2) := by
  38      constructor
  39      · have hneg : (-(Real.pi / 2) : ℝ) ≤ 0 := by nlinarith [Real.pi_pos]
  40        exact le_trans hneg hϑ.1
  41      · exact hϑ.2
  42    simpa using Real.cos_nonneg_of_mem_Icc hmem
  43  have hcot : 0 ≤ Real.cot ϑ := by
  44    -- Rewrite `cot` as `cos / sin` on reals.
  45    simpa [Real.cot_eq_cos_div_sin] using (div_nonneg hcos hsin)
  46  have hprod : 0 ≤ 2 * Real.cot ϑ := by
  47    have htwo : 0 ≤ (2 : ℝ) := by norm_num
  48    exact mul_nonneg htwo hcot
  49  simpa using add_le_add_left hprod 1
  50
  51/-- Recognition profile is positive -/
  52lemma recognitionProfile_pos (ϑ : ℝ) (hϑ : 0 ≤ ϑ ∧ ϑ ≤ π/2) :
  53  0 < recognitionProfile ϑ := by
  54  have hy : 1 ≤ 1 + 2 * Real.cot ϑ := arcosh_arg_ge_one ϑ hϑ
  55  have hypos : 0 < 1 + 2 * Real.cot ϑ := lt_of_lt_of_le zero_lt_one hy
  56  have hs : 0 ≤ Real.sqrt ((1 + 2 * Real.cot ϑ) ^ 2 - 1) := Real.sqrt_nonneg _
  57  exact add_pos_of_pos_of_nonneg hypos hs