src/HOL/Tools/Predicate_Compile/predicate_compile_quickcheck.ML
changeset 41472 f6ab14e61604
parent 40924 a9be7f26b4e6
child 42012 2c3fe3cbebae
child 42031 2de57cda5b24
equal deleted inserted replaced
41471:54a58904a598 41472:f6ab14e61604
    33 structure Predicate_Compile_Quickcheck : PREDICATE_COMPILE_QUICKCHECK =
    33 structure Predicate_Compile_Quickcheck : PREDICATE_COMPILE_QUICKCHECK =
    34 struct
    34 struct
    35 
    35 
    36 open Predicate_Compile_Aux;
    36 open Predicate_Compile_Aux;
    37 
    37 
    38 structure Pred_Result = Proof_Data (
    38 (* FIXME just one data slot (record) per program unit *)
       
    39 
       
    40 structure Pred_Result = Proof_Data
       
    41 (
    39   type T = unit -> int -> int -> int -> int * int -> term list Predicate.pred
    42   type T = unit -> int -> int -> int -> int * int -> term list Predicate.pred
       
    43   (* FIXME avoid user error with non-user text *)
    40   fun init _ () = error "Pred_Result"
    44   fun init _ () = error "Pred_Result"
    41 );
    45 );
    42 val put_pred_result = Pred_Result.put;
    46 val put_pred_result = Pred_Result.put;
    43 
    47 
    44 structure Dseq_Result = Proof_Data (
    48 structure Dseq_Result = Proof_Data
       
    49 (
    45   type T = unit -> int -> int -> int * int -> term list DSequence.dseq * (int * int)
    50   type T = unit -> int -> int -> int * int -> term list DSequence.dseq * (int * int)
       
    51   (* FIXME avoid user error with non-user text *)
    46   fun init _ () = error "Dseq_Result"
    52   fun init _ () = error "Dseq_Result"
    47 );
    53 );
    48 val put_dseq_result = Dseq_Result.put;
    54 val put_dseq_result = Dseq_Result.put;
    49 
    55 
    50 structure Lseq_Result = Proof_Data (
    56 structure Lseq_Result = Proof_Data
       
    57 (
    51   type T = unit -> int -> int -> int * int -> int -> term list Lazy_Sequence.lazy_sequence
    58   type T = unit -> int -> int -> int * int -> int -> term list Lazy_Sequence.lazy_sequence
       
    59   (* FIXME avoid user error with non-user text *)
    52   fun init _ () = error "Lseq_Result"
    60   fun init _ () = error "Lseq_Result"
    53 );
    61 );
    54 val put_lseq_result = Lseq_Result.put;
    62 val put_lseq_result = Lseq_Result.put;
    55 
    63 
    56 structure New_Dseq_Result = Proof_Data (
    64 structure New_Dseq_Result = Proof_Data
       
    65 (
    57   type T = unit -> int -> term list Lazy_Sequence.lazy_sequence
    66   type T = unit -> int -> term list Lazy_Sequence.lazy_sequence
       
    67   (* FIXME avoid user error with non-user text *)
    58   fun init _ () = error "New_Dseq_Random_Result"
    68   fun init _ () = error "New_Dseq_Random_Result"
    59 );
    69 );
    60 val put_new_dseq_result = New_Dseq_Result.put;
    70 val put_new_dseq_result = New_Dseq_Result.put;
    61 
    71 
    62 val tracing = Unsynchronized.ref false;
    72 val tracing = Unsynchronized.ref false;