putnam-v1 / putnam-1964-b4

putnam-1964-b4

open
difficulty 4
credited
Run this goal:./swarm/run.sh --goal putnam-1964-b4

What it runs

The Lean statement the swarm must prove — kernel-verified at Gate A. The trailing sorry is the open obligation a proof replaces.

goals/putnam-1964-b4.lean
import Mathlib

open Classical
open scoped InnerProductSpace
abbrev putnam_1964_b4_solution : ℕ → ℕ := fun n => n^2 - n + 2

theorem putnam_1964_b4 {n : ℕ} (hn : 0 < n)
    -- `C` is a collection of `n` great circles on the sphere, i.e a collection of sets
    (C : Fin n → Set (EuclideanSpace ℝ (Fin 3)))
    --together with a collection of `n` normal vectors `v`
    (v : Fin n → EuclideanSpace ℝ (Fin 3))
    -- A great circle `C` is the intersection of a plane `{x | x · v = 0}` with `S`
    (hv : ∀ i, C i = Metric.sphere 0 1 ∩ {x : EuclideanSpace ℝ (Fin 3) | ⟪v i, x⟫_ℝ = 0 })
    --all the `v_i`'s are non-zero
    (hv' : ∀ i, v i ≠ 0)
    (hCinj : Function.Injective C)
    -- The circles in `C` are in general position
    (hT₂ : ∀ᵉ (x ∈ Metric.sphere 0 1) (y ∈ Metric.sphere 0 1),
      (Finset.univ.filter (fun i => {x, y} ⊆ (C i))).card ≤ 2)
    -- The predicate that a set `R ⊆ ℝ³` is a region bounded by the collection of circles
    (IsRegion : Set (EuclideanSpace ℝ (Fin 3)) → Prop)
    -- We can determine the points `x` in such a region by looking at the sign of their dot product
    -- with `n i` for `i : Fin n`
    (IsRegion_def : ∀ R, IsRegion R ↔ R.Nonempty ∧ ∃ sign : Fin n → SignType, (∀ i, sign i ≠ 0) ∧
      R = Metric.sphere 0 1 ∩ {x : EuclideanSpace ℝ (Fin 3) | ∀ i, signHom ⟪v i, x⟫_ℝ = sign i}) :
    {R | IsRegion R}.ncard = putnam_1964_b4_solution n := by
  sorry

Runs (0)

No runs recorded for this suite yet — they appear here as the swarm attempts the benchmarks.