0 | module Algebra.Solver.Ops
2 | import public Data.List.Elem
4 | export infixl 8 .+>
, <+.
, .+.
9 | eqElem : (e1 : Elem x xs) -> (e2 : Elem y xs) -> Maybe (e1 ~=~ e2)
10 | eqElem Here Here = Just Refl
11 | eqElem Here (There z) = Nothing
12 | eqElem (There z) Here = Nothing
13 | eqElem (There z) (There w) = case eqElem z w of
14 | Just Refl => Just Refl