src/HOL/IOA/meta_theory/Option.ML
changeset 966 3fd66f245ad7
child 1052 e044350bfa52
equal deleted inserted replaced
965:24eef3860714 966:3fd66f245ad7
       
     1 (*  Title:      Option.ML
       
     2     ID:         $Id$
       
     3     Author:     Tobias Nipkow
       
     4     Copyright   1994  TU Muenchen
       
     5 
       
     6 Derived rules
       
     7 *)
       
     8 
       
     9 val option_rws = Let_def :: Option.option.simps;
       
    10 val SS = arith_ss addsimps option_rws;
       
    11 
       
    12 val [prem] = goal Option.thy "P(opt) ==> P(None) | (? x. P(Some(x)))";
       
    13  br (prem RS rev_mp) 1;
       
    14  by (Option.option.induct_tac "opt" 1);
       
    15  by (ALLGOALS(fast_tac HOL_cs));
       
    16 val optE = store_thm("optE", standard(result() RS disjE));