src/HOL/Option.ML
author paulson
Mon, 26 May 1997 12:40:51 +0200
changeset 3344 b3e39a2987c1
parent 3295 c9c99aa082fb
child 4032 4b1c69d8b767
permissions -rw-r--r--
Deleted option_case_tac because exhaust_tac performs a similar function. Deleted the duplicate proof of expand_option_case...

(*  Title:      Option.ML
    ID:         $Id$
    Author:     Tobias Nipkow
    Copyright   1996  TU Muenchen

Derived rules
*)

open Option;

goal Option.thy "P(case opt of None => a | Some(x) => b x) = \
\                ((opt = None --> P a) & (!x. opt = Some x --> P(b x)))";
by (option.induct_tac "opt" 1);
by (Simp_tac 1);
by (Asm_full_simp_tac 1);
qed "expand_option_case";