| 1 |
3. x1 : 'a
4. x : 'a
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inl(x1))
5. =
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inl(x))
inl(x1) = inl(x) 'a+'b
 | 2 steps |
| 2 |
3. y : 'b
4. x : 'a
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inr(y))
5. =
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inl(x))
inr(y) = inl(x) 'a+'b
 | 2 steps |
| 3 |
3. x : 'a
4. y : 'b
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inl(x))
5. =
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inr(y))
inl(x) = inr(y) 'a+'b
 | 2 steps |
| 4 |
3. y1 : 'b
4. y : 'b
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inr(y1))
5. =
5. ( u:'a+'b. InjCase(u
5. ( u:'a+'b. InjCase; p. b: . x:'a. y:'b. (x = p) b
5. ( u:'a+'b. InjCase; q. b: . x:'a. y:'b. (y = q)   b))
5. (inr(y))
inr(y1) = inr(y) 'a+'b
 | 2 steps |