lh-l4v/lib
Gerwin Klein 78007a4179 lib: add value_type command
The `value_type` top-level command allows evaluating a term down to a
natural number, and using that number to define an enumerated type, as
well as (optionally) a constant definition.

Co-authored-by: Rafal Kolanski <rafal.kolanski@proofcraft.systems>
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-12-22 23:50:22 +11:00
..
CorresK isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
EVTutorial isabelle-2021: update EVTutorial 2021-09-30 16:53:17 +10:00
Hoare_Sep_Tactics lib + proof: Isabelle2020 Method.NO_CONTEXT_TACTIC rename 2020-10-27 15:52:31 +10:00
Monad_WP lib: retire OR syntax for monads 2021-09-30 16:53:17 +10:00
Word_Lib word_lib: make sure Word_Lib setup is not shadowed 2021-09-30 16:53:17 +10:00
clib isabelle-2021: update CSpec 2021-09-30 16:53:17 +10:00
concurrency lib: retire OR syntax for monads 2021-09-30 16:53:17 +10:00
doc licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
ml-helpers cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
sep_algebra isabelle-2021: update Sep_Algebra 2021-09-30 16:53:17 +10:00
subgoal_focus licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
test lib: add value_type command 2021-12-22 23:50:22 +11:00
AddUpdSimps.thy lib AddUpdSimps: cleanup + remove old debugging code 2020-05-04 17:02:58 +08:00
Apply_Debug.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
Apply_Trace.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
Apply_Trace_Cmd.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
AutoLevity.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
AutoLevity_Base.thy autolevity: avoid overlapping position info 2021-09-30 16:53:17 +10:00
AutoLevity_Hooks.thy autolevity: avoid overlapping position info 2021-09-30 16:53:17 +10:00
AutoLevity_Theory_Report.thy isabelle-2021: Lib update 2021-09-30 16:53:17 +10:00
BCorres_UL.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
Bisim_UL.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
Conjuncts.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Corres_Adjust_Preconds.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Corres_Method.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Corres_UL.thy isabelle-2021: ad-hoc adjustions to preview 2021-09-30 16:53:17 +10:00
Crunch.ML licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Crunch.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
Crunch_Instances_NonDet.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
Crunch_Instances_Trace.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
DataMap.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Defs.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
DetWPLib.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Distinct_Cmd.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Eisbach_Methods.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
EmptyFailLib.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
EquivValid.thy various: resolve some new fixmes 2021-11-12 09:39:16 +11:00
Eval_Bool.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
ExtraCorres.thy lib proof: reorder the assumptions of corres_split 2021-02-19 11:37:12 +11:00
Extract_Conjunct.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
FP_Eval.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
FastMap.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Find_Names.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
GenericLib.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
GenericTag.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Guess_ExI.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
HaskellLemmaBucket.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
HaskellLib_H.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
Insulin.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
LemmaBucket.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
LexordList.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Lib.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
ListLibLemmas.thy Cleanup some FIXMEs in AInvs and related sessions 2021-07-16 14:13:07 +10:00
List_Lib.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Local_Method.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Locale_Abbrev.thy isabelle-2021: Lib update 2021-09-30 16:53:17 +10:00
ML_Goal.thy lib: add ML_goal command 2020-05-13 11:53:50 +08:00
ML_Goal_Test.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
Match_Abbreviation.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
MonadEq.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
MonadicRewrite.thy all: remove theory import path references 2020-11-02 10:16:17 +10:00
More_Numeral_Type.thy isabelle-2021: ad-hoc adjustions to preview 2021-09-30 16:53:17 +10:00
NICTATools.thy lib: add value_type command 2021-12-22 23:50:22 +11:00
NatBitwise.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
NonDetMonadLemmaBucket.thy Cleanup some FIXMEs in AInvs and related sessions 2021-07-16 14:13:07 +10:00
ProvePart.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Qualify.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
ROOT lib: add value_type command 2021-12-22 23:50:22 +11:00
RangeMap.thy isabelle-2021: update Lib 2021-09-30 16:53:17 +10:00
Repeat_Attribute.thy lib: add attribute to repeatedly apply other attributes 2020-11-09 17:18:41 +11:00
Requalify.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Rule_By_Method.thy lib: Isabelle2020 update 2020-10-27 15:52:31 +10:00
ShowTypes.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
SimpStrategy.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Simp_No_Conditional.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Simulation.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Solves_Tac.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
SpecValid_R.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
SplitRule.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
StateMonad.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
SubMonadLib.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
TSubst.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Time_Methods_Cmd.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Trace_Schematic_Insts.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
Try_Attribute.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Try_Methods.thy cleanup: reduce warnings 2021-09-30 16:53:17 +10:00
Value_Abbreviation.thy licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Value_Type.thy lib: add value_type command 2021-12-22 23:50:22 +11:00
crunch-cmd.ML lib: notify if crunch generates side-conditions 2021-11-10 16:39:23 +11:00
defs.ML licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
set.ML licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
tests.xml lib: A tutorial and some 'modify' monad rules for Lib.EquivValid 2020-11-17 06:06:03 +11:00