Proof Ground 2021 Results

Max P.L. Haslbeck, Simon Wimmer

June 28, 2021

Results

Acknowledgements

Problems submitted by

Armaël Guéneau

Fabian Huch

Problem committee

Floris van Doorn

Maximilian P. L. Haslbeck

Anton Trunov

Simon Wimmer

Final Leaderboard

Problems

Solutions

Github repository with solutions: https://github.com/wimmers/proofground2021-solutions

Send us a pull request with your own!

Fourier-Motzkin Elimination

Submitted by: Simon Wimmer

Originally from a student project, kudos to Alexander Gehrlein

Group Theory

Submitted by: Floris van Doorn

lemma group_theory_problem {G H : Type*} [group G] [group H] (f : G →* H)
  (h1 : ∀ a b, a * b * a⁻¹ * b⁻¹ ∈ center G) (h2 : ∀ x ∈ center G, f x = 1 → x = 1) :
    injective f :=
begin
  suffices : ∀ (a : G), f a = 1 → a = 1,
  { rwa [monoid_hom.injective_iff] },
  intros a ha,
  have : a ∈ center G,
  { intro b,
    have : f (a * b * a⁻¹ * b⁻¹) = 1,
    { simp [ha] },
    have : a * b * a⁻¹ * b⁻¹ = 1,
    { refine h2 _ (h1 a b) this },
    rw [eq_comm],
    simpa [mul_inv_eq_iff_eq_mul] using this },
  exact h2 a this ha
end

No group theory in Coq stdlib :(

SAT Solver

Submitted by: Armaël Guéneau

Interval Lists

Submitted by: Fabian Huch

From a course @TUM

Kadane’s Algorithm

Submitted by: Simon Wimmer

Thought of it while working on dynamic programming algorithms.

Had to reformulate for Coq to avoid indices and sets.

Thank You!

Help Wanted

We are looking for:

  • organizers
  • problem committee members
  • problems