Skip to content

Instantly share code, notes, and snippets.

@useronym
Created April 15, 2019 15:43
Show Gist options
  • Save useronym/436e8bde86ae5a6293d1eeba57e55670 to your computer and use it in GitHub Desktop.
Save useronym/436e8bde86ae5a6293d1eeba57e55670 to your computer and use it in GitHub Desktop.
module EvenOdd where
open import Relation.Binary.PropositionalEquality
open import Data.Nat
open import Data.Nat.Solver
open import Data.Product
open +-*-Solver
Even : Set
Even n = ∃[ m ] (n ≡ 2 * m) -- could use _≟_ here instead if necessary
-- Goal: m/2 + (m/2 + zero) + (n/2 + (n/2 + zero)) ≡
-- m/2 + n/2 + (m/2 + n/2 + zero)
even+even : {m n} Even m Even n Even (m + n)
even+even (m/2 , refl) (n/2 , refl) = (m/2 + n/2) , {!solve ? ?!}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment