| author | paulson |
| Tue, 01 Jul 1997 17:34:13 +0200 | |
| changeset 3476 | 1be4fee7606b |
| parent 3344 | b3e39a2987c1 |
| child 4032 | 4b1c69d8b767 |
| permissions | -rw-r--r-- |
| 2019 | 1 |
(* Title: Option.ML |
2 |
ID: $Id$ |
|
3 |
Author: Tobias Nipkow |
|
4 |
Copyright 1996 TU Muenchen |
|
5 |
||
6 |
Derived rules |
|
7 |
*) |
|
8 |
||
9 |
open Option; |
|
10 |
||
|
3344
b3e39a2987c1
Deleted option_case_tac because exhaust_tac performs a similar function.
paulson
parents:
3295
diff
changeset
|
11 |
goal Option.thy "P(case opt of None => a | Some(x) => b x) = \ |
|
b3e39a2987c1
Deleted option_case_tac because exhaust_tac performs a similar function.
paulson
parents:
3295
diff
changeset
|
12 |
\ ((opt = None --> P a) & (!x. opt = Some x --> P(b x)))"; |
| 2019 | 13 |
by (option.induct_tac "opt" 1); |
14 |
by (Simp_tac 1); |
|
15 |
by (Asm_full_simp_tac 1); |
|
|
3344
b3e39a2987c1
Deleted option_case_tac because exhaust_tac performs a similar function.
paulson
parents:
3295
diff
changeset
|
16 |
qed "expand_option_case"; |