2014-08-07 18:36:44 +00:00
|
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
-- Copyright (c) 2014 Microsoft Corporation. All rights reserved.
|
2014-07-19 19:09:47 +00:00
|
|
|
-- Released under Apache 2.0 license as described in the file LICENSE.
|
|
|
|
-- Author: Leonardo de Moura
|
2014-08-01 01:40:09 +00:00
|
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
import logic.connectives.prop
|
2014-07-19 19:09:47 +00:00
|
|
|
|
|
|
|
namespace sum
|
2014-08-12 22:00:32 +00:00
|
|
|
inductive sum (A B : Type) : Type :=
|
2014-07-19 19:09:47 +00:00
|
|
|
| inl : A → sum A B
|
|
|
|
| inr : B → sum A B
|
|
|
|
|
|
|
|
infixr `+`:25 := sum
|
|
|
|
|
2014-08-12 22:00:32 +00:00
|
|
|
theorem induction_on {A B : Type} {C : Prop} (s : A + B) (H1 : A → C) (H2 : B → C) : C :=
|
2014-07-29 02:58:57 +00:00
|
|
|
sum_rec H1 H2 s
|
2014-08-07 23:59:08 +00:00
|
|
|
end sum
|