src/HOL/IsaMakefile
author wenzelm
Thu, 31 May 2007 18:16:52 +0200
changeset 23164 69e55066dbca
parent 23150 073a65f0bc40
child 23172 f1ae6a8648ef
permissions -rw-r--r--
moved Integ files to canonical place;

#
# IsaMakefile for HOL
#

## targets

default: HOL
generate: HOL-Complex-Generate-HOL HOL-Complex-Generate-HOLLight
images: HOL HOL-Algebra HOL-Complex HOL-Complex-Matrix HOL-Nominal TLA HOL4

#Note: keep targets sorted (except for HOL-Library)
test: \
  HOL-Library \
  HOL-Auth \
  HOL-AxClasses \
  HOL-Bali \
  HOL-Complex-HahnBanach \
  HOL-Complex-Import \
  HOL-Complex-ex \
  HOL-Extraction \
  HOL-Hoare \
  HOL-HoareParallel \
  HOL-IMP \
  HOL-IMPP \
  HOL-IOA \
  HOL-Induct \
  HOL-Isar_examples \
  HOL-Lambda \
  HOL-Lattice \
  HOL-MicroJava \
  HOL-Modelcheck \
  HOL-NanoJava \
  HOL-Nominal-Examples \
  HOL-NumberTheory \
  HOL-Prolog \
  HOL-SET-Protocol \
  HOL-Subst \
      TLA-Buffer \
      TLA-Inc \
      TLA-Memory \
  HOL-UNITY \
  HOL-Unix \
  HOL-W0 \
  HOL-ZF \
  HOL-ex 
    # ^ this is the sort position

all: test images


## global settings

SRC = $(ISABELLE_HOME)/src
OUT = $(ISABELLE_OUTPUT)
LOG = $(OUT)/log


## HOL

HOL: Pure $(OUT)/HOL

Pure:
	@cd $(SRC)/Pure; $(ISATOOL) make Pure

$(OUT)/HOL: $(OUT)/Pure $(SRC)/Provers/Arith/abel_cancel.ML			\
  $(SRC)/Provers/Arith/assoc_fold.ML						\
  $(SRC)/Provers/Arith/cancel_div_mod.ML					\
  $(SRC)/Provers/Arith/cancel_numeral_factor.ML					\
  $(SRC)/Provers/Arith/cancel_numerals.ML					\
  $(SRC)/Provers/Arith/cancel_sums.ML						\
  $(SRC)/Provers/Arith/combine_numerals.ML					\
  $(SRC)/Provers/Arith/extract_common_term.ML					\
  $(SRC)/Provers/Arith/fast_lin_arith.ML					\
  $(SRC)/Provers/IsaPlanner/isand.ML						\
  $(SRC)/Provers/IsaPlanner/rw_inst.ML						\
  $(SRC)/Provers/IsaPlanner/rw_tools.ML						\
  $(SRC)/Provers/IsaPlanner/zipper.ML $(SRC)/Provers/blast.ML			\
  $(SRC)/Provers/clasimp.ML $(SRC)/Provers/classical.ML				\
  $(SRC)/Provers/eqsubst.ML $(SRC)/Provers/hypsubst.ML				\
  $(SRC)/Provers/induct_method.ML $(SRC)/Provers/order.ML			\
  $(SRC)/Provers/project_rule.ML $(SRC)/Provers/quantifier1.ML			\
  $(SRC)/Provers/quasi.ML $(SRC)/Provers/splitter.ML				\
  $(SRC)/Provers/trancl.ML $(SRC)/Pure/General/int.ML				\
  $(SRC)/Pure/General/rat.ML Tools/TFL/casesplit.ML				\
  ATP_Linkup.thy Accessible_Part.thy Code_Generator.thy Datatype.thy		\
  Divides.thy Equiv_Relations.thy Extraction.thy Finite_Set.thy			\
  FixedPoint.thy Fun.thy FunDef.thy HOL.thy Hilbert_Choice.thy			\
  Inductive.thy IntArith.thy IntDef.thy IntDiv.thy Lattices.thy List.thy	\
  Main.thy Map.thy Nat.ML Nat.thy NatBin.thy NatSimprocs.thy Numeral.thy	\
  OrderedGroup.thy Orderings.thy Power.thy PreList.thy Predicate.thy		\
  Presburger.thy Product_Type.thy ROOT.ML Recdef.thy Record.thy			\
  Refute.thy Relation.thy Relation_Power.thy Ring_and_Field.thy SAT.thy		\
  Set.thy SetInterval.thy Sum_Type.thy Tools/ATP/reduce_axiomsN.ML		\
  Tools/ATP/watcher.ML Tools/Presburger/cooper_dec.ML				\
  Tools/Presburger/cooper_proof.ML Tools/Presburger/presburger.ML		\
  Tools/Presburger/qelim.ML Tools/Presburger/reflected_cooper.ML		\
  Tools/Presburger/reflected_presburger.ML Tools/TFL/dcterm.ML			\
  Tools/TFL/post.ML Tools/TFL/rules.ML Tools/TFL/tfl.ML				\
  Tools/TFL/thms.ML Tools/TFL/thry.ML Tools/TFL/usyntax.ML			\
  Tools/TFL/utils.ML Tools/cnf_funcs.ML Tools/datatype_abs_proofs.ML		\
  Tools/datatype_aux.ML Tools/datatype_case.ML Tools/datatype_codegen.ML	\
  Tools/datatype_hooks.ML Tools/datatype_package.ML				\
  Tools/datatype_prop.ML Tools/datatype_realizer.ML				\
  Tools/datatype_rep_proofs.ML Tools/function_package/auto_term.ML		\
  Tools/function_package/context_tree.ML					\
  Tools/function_package/fundef_common.ML					\
  Tools/function_package/fundef_core.ML						\
  Tools/function_package/fundef_datatype.ML					\
  Tools/function_package/fundef_lib.ML						\
  Tools/function_package/fundef_package.ML					\
  Tools/function_package/inductive_wrap.ML					\
  Tools/function_package/lexicographic_order.ML					\
  Tools/function_package/mutual.ML						\
  Tools/function_package/pattern_split.ML					\
  Tools/function_package/sum_tools.ML Tools/inductive_codegen.ML		\
  Tools/inductive_package.ML Tools/inductive_realizer.ML Tools/meson.ML		\
  Tools/numeral_syntax.ML Tools/old_inductive_package.ML			\
  Tools/polyhash.ML Tools/primrec_package.ML Tools/prop_logic.ML		\
  Tools/recdef_package.ML Tools/recfun_codegen.ML				\
  Tools/record_package.ML Tools/refute.ML Tools/refute_isar.ML			\
  Tools/res_atp.ML Tools/res_atp_methods.ML Tools/res_atp_provers.ML		\
  Tools/res_atpset.ML Tools/res_axioms.ML Tools/res_clause.ML			\
  Tools/res_hol_clause.ML Tools/res_reconstruct.ML				\
  Tools/rewrite_hol_proof.ML Tools/sat_funcs.ML Tools/sat_solver.ML		\
  Tools/specification_package.ML Tools/split_rule.ML				\
  Tools/string_syntax.ML Tools/typecopy_package.ML				\
  Tools/typedef_codegen.ML Tools/typedef_package.ML				\
  Transitive_Closure.thy Typedef.thy Wellfounded_Recursion.thy			\
  Wellfounded_Relations.thy arith_data.ML document/root.tex hologic.ML		\
  int_arith1.ML int_factor_simprocs.ML nat_simprocs.ML simpdata.ML
	@$(ISATOOL) usedir $(HOL_USEDIR_OPTIONS) -b -g true $(OUT)/Pure HOL


## HOL-Complex-HahnBanach

HOL-Complex-HahnBanach: HOL-Complex $(LOG)/HOL-Complex-HahnBanach.gz

$(LOG)/HOL-Complex-HahnBanach.gz: $(OUT)/HOL-Complex			\
  Real/HahnBanach/Bounds.thy Real/HahnBanach/FunctionNorm.thy		\
  Real/HahnBanach/FunctionOrder.thy Real/HahnBanach/HahnBanach.thy	\
  Real/HahnBanach/HahnBanachExtLemmas.thy				\
  Real/HahnBanach/HahnBanachSupLemmas.thy				\
  Real/HahnBanach/Linearform.thy Real/HahnBanach/NormedSpace.thy	\
  Real/HahnBanach/README.html Real/HahnBanach/ROOT.ML			\
  Real/HahnBanach/Subspace.thy Real/HahnBanach/VectorSpace.thy		\
  Real/HahnBanach/ZornLemma.thy Real/HahnBanach/document/root.bib	\
  Real/HahnBanach/document/root.tex
	@cd Real; $(ISATOOL) usedir -g true $(OUT)/HOL-Complex HahnBanach


## HOL-Complex

HOL-Complex: HOL $(OUT)/HOL-Complex

$(OUT)/HOL-Complex: $(OUT)/HOL Complex/ROOT.ML $(SRC)/Pure/General/float.ML	\
  Library/Zorn.thy														\
  Real/ContNotDenum.thy Real/Ferrante_Rackoff.thy Real/float_arith.ML	\
  Real/Float.thy Real/Lubs.thy Real/PReal.thy Real/RComplete.thy		\
  Real/ROOT.ML Real/Rational.thy Real/Real.thy Real/RealDef.thy			\
  Real/RealPow.thy Real/RealVector.thy Real/ferrante_rackoff_proof.ML	\
  Real/ferrante_rackoff.ML Real/rat_arith.ML Real/real_arith.ML			\
  Hyperreal/StarDef.thy Hyperreal/StarClasses.thy				\
  Hyperreal/EvenOdd.thy Hyperreal/Fact.thy Hyperreal/HLog.thy			\
  Hyperreal/Filter.thy Hyperreal/HSeries.thy Hyperreal/transfer.ML		\
  Hyperreal/HLim.thy Hyperreal/HSEQ.thy Hyperreal/HTranscendental.thy		\
  Hyperreal/HDeriv.thy Hyperreal/HyperDef.thy Hyperreal/HyperNat.thy		\
  Hyperreal/Hyperreal.thy							\
  Hyperreal/Integration.thy Hyperreal/Lim.thy Hyperreal/Log.thy			\
  Hyperreal/Ln.thy Hyperreal/MacLaurin.thy Hyperreal/NatStar.thy		\
  Hyperreal/NSA.thy Hyperreal/NthRoot.thy Hyperreal/Poly.thy			\
  Hyperreal/SEQ.thy Hyperreal/Series.thy Hyperreal/Star.thy			\
  Hyperreal/Taylor.thy Hyperreal/FrechetDeriv.thy Hyperreal/Deriv.thy		\
  Hyperreal/Transcendental.thy Hyperreal/hypreal_arith.ML			\
  Complex/Complex_Main.thy Complex/CLim.thy					\
  Complex/CStar.thy Complex/Complex.thy Complex/NSCA.thy Complex/NSComplex.thy  \
  Complex/document/root.tex Library/Infinite_Set.thy Library/Parity.thy
	@cd Complex; $(ISATOOL) usedir -b -g true $(OUT)/HOL HOL-Complex


## HOL-Complex-ex

HOL-Complex-ex: HOL-Complex $(LOG)/HOL-Complex-ex.gz

$(LOG)/HOL-Complex-ex.gz: $(OUT)/HOL-Complex Library/Primes.thy \
  Complex/ex/ROOT.ML Complex/ex/document/root.tex \
  Complex/ex/BigO_Complex.thy Complex/ex/BinEx.thy Complex/ex/Ferrante_Rackoff_Ex.thy \
  Complex/ex/NSPrimes.thy Complex/ex/Sqrt.thy Complex/ex/Sqrt_Script.thy
	@cd Complex; $(ISATOOL) usedir $(OUT)/HOL-Complex ex


## HOL-Library

HOL-Library: HOL $(LOG)/HOL-Library.gz

$(LOG)/HOL-Library.gz: $(OUT)/HOL \
  Library/SetsAndFunctions.thy Library/BigO.thy Library/Ramsey.thy \
  Library/EfficientNat.thy Library/ExecutableSet.thy Library/ExecutableRat.thy \
  Library/Executable_Real.thy \
  Library/MLString.thy Library/Infinite_Set.thy \
  Library/FuncSet.thy Library/Library.thy Library/List_Comprehension.thy \
  Library/List_Prefix.thy Library/State_Monad.thy Library/Multiset.thy Library/NatPair.thy \
  Library/Permutation.thy Library/Primes.thy Library/Quotient.thy \
  Library/Nat_Infinity.thy Library/Word.thy \
  Library/README.html Library/Continuity.thy \
  Library/Nested_Environment.thy Library/Zorn.thy\
  Library/Library/ROOT.ML Library/Library/document/root.tex \
  Library/Library/document/root.bib Library/While_Combinator.thy \
  Library/Product_ord.thy Library/Char_nat.thy Library/Char_ord.thy \
  Library/List_lexord.thy Library/Commutative_Ring.thy Library/comm_ring.ML \
  Library/Coinductive_List.thy Library/AssocList.thy \
  Library/Parity.thy Library/GCD.thy Library/Binomial.thy \
  Library/Graphs.thy Library/Kleene_Algebras.thy Library/SCT_Misc.thy \
  Library/SCT_Definition.thy Library/SCT_Theorem.thy Library/SCT_Interpretation.thy \
  Library/SCT_Implementation.thy Library/Size_Change_Termination.thy \
  Library/SCT_Examples.thy Library/sct.ML \
  Library/Pure_term.thy Library/Eval.thy Library/Pretty_Int.thy \
  Library/Pretty_Char.thy Library/Pretty_Char_chr.thy
	@cd Library; $(ISATOOL) usedir $(OUT)/HOL Library


## HOL-Subst

HOL-Subst: HOL $(LOG)/HOL-Subst.gz

$(LOG)/HOL-Subst.gz: $(OUT)/HOL Subst/AList.thy \
  Subst/ROOT.ML Subst/Subst.thy Subst/UTerm.thy Subst/Unifier.thy \
  Subst/Unify.thy
	@$(ISATOOL) usedir $(OUT)/HOL Subst


## HOL-Induct

HOL-Induct: HOL $(LOG)/HOL-Induct.gz

$(LOG)/HOL-Induct.gz: $(OUT)/HOL \
  Induct/Com.thy Induct/Comb.thy Induct/LFilter.thy \
  Induct/LList.thy Induct/Mutil.thy Induct/Ordinals.thy \
  Induct/PropLog.thy Induct/QuoNestedDataType.thy Induct/QuoDataType.thy\
  Induct/ROOT.ML \
  Induct/Sexp.thy Induct/Sigma_Algebra.thy \
  Induct/SList.thy Induct/ABexp.thy Induct/Term.thy \
  Induct/Tree.thy Induct/document/root.tex
	@$(ISATOOL) usedir $(OUT)/HOL Induct


## HOL-IMP

HOL-IMP: HOL $(LOG)/HOL-IMP.gz

$(LOG)/HOL-IMP.gz: $(OUT)/HOL IMP/Com.thy IMP/Compiler0.thy IMP/Compiler.thy \
  IMP/Denotation.thy IMP/Expr.thy IMP/Hoare.thy \
  IMP/Natural.thy IMP/Examples.thy \
  IMP/Transition.thy IMP/VC.thy IMP/ROOT.ML IMP/document/root.tex \
  IMP/document/root.bib
	@$(ISATOOL) usedir -g true $(OUT)/HOL IMP


## HOL-IMPP

HOL-IMPP: HOL $(LOG)/HOL-IMPP.gz

$(LOG)/HOL-IMPP.gz: $(OUT)/HOL IMPP/ROOT.ML IMPP/Com.thy \
  IMPP/Natural.thy IMPP/Hoare.thy IMPP/Misc.thy IMPP/EvenOdd.thy
	@$(ISATOOL) usedir $(OUT)/HOL IMPP


## HOL-Complex-Import

IMPORTER_FILES = Import/lazy_seq.ML Import/proof_kernel.ML Import/replay.ML \
  Import/shuffler.ML Import/MakeEqual.thy Import/HOL4Setup.thy \
  Import/HOL4Syntax.thy Import/HOL4Compat.thy Import/import_syntax.ML \
  Import/hol4rews.ML Import/import_package.ML Import/ROOT.ML

IMPORTER_HOLLIGHT_FILES = Import/proof_kernel.ML Import/replay.ML \
  Import/shuffler.ML Import/MakeEqual.thy Import/HOL4Setup.thy \
  Import/HOL4Syntax.thy Import/HOLLightCompat.thy Import/import_syntax.ML \
  Import/hol4rews.ML Import/import_package.ML Import/ROOT.ML

HOL-Complex-Import: HOL-Complex $(LOG)/HOL-Complex-Import.gz

$(LOG)/HOL-Complex-Import.gz: $(OUT)/HOL-Complex $(IMPORTER_FILES)
	@$(ISATOOL) usedir $(OUT)/HOL-Complex Import


## HOL-Complex-Generate-HOL

HOL-Complex-Generate-HOL: HOL-Complex $(LOG)/HOL-Complex-Generate-HOL.gz

$(LOG)/HOL-Complex-Generate-HOL.gz: $(OUT)/HOL-Complex $(IMPORTER_FILES)  \
  Import/Generate-HOL/GenHOL4Base.thy Import/Generate-HOL/GenHOL4Prob.thy \
  Import/Generate-HOL/GenHOL4Real.thy Import/Generate-HOL/GenHOL4Vec.thy  \
  Import/Generate-HOL/GenHOL4Word32.thy Import/Generate-HOL/ROOT.ML
	@cd Import; $(ISATOOL) usedir $(OUT)/HOL-Complex Generate-HOL


## HOL-Complex-Generate-HOLLight

HOL-Complex-Generate-HOLLight: HOL-Complex $(LOG)/HOL-Complex-Generate-HOLLight.gz

$(LOG)/HOL-Complex-Generate-HOLLight.gz: $(OUT)/HOL-Complex $(IMPORTER_HOLLIGHT_FILES)  \
  Import/Generate-HOLLight/GenHOLLight.thy Import/Generate-HOLLight/ROOT.ML
	@cd Import; $(ISATOOL) usedir $(OUT)/HOL-Complex Generate-HOLLight


## HOL-Import-HOL

HOL4: HOL-Complex $(LOG)/HOL4.gz

HOL_IMPORT_FILES = arithmetic.imp bits.imp boolean_sequence.imp bool.imp \
  bword_arith.imp bword_bitop.imp bword_num.imp combin.imp divides.imp \
  hrat.imp hreal.imp ind_type.imp lim.imp list.imp marker.imp nets.imp \
  numeral.imp num.imp one.imp operator.imp option.imp pair.imp poly.imp \
  powser.imp pred_set.imp prime.imp prim_rec.imp prob_algebra.imp \
  prob_canon.imp prob_extra.imp prob.imp prob_indep.imp prob_pseudo.imp \
  prob_uniform.imp realax.imp real.imp relation.imp res_quan.imp rich_list.imp \
  seq.imp state_transformer.imp sum.imp topology.imp transc.imp word32.imp \
  word_base.imp word_bitop.imp word_num.imp

$(LOG)/HOL4.gz: $(OUT)/HOL-Complex $(IMPORTER_FILES) \
  $(HOL_IMPORT_FILES:%=Import/HOL/%) Import/HOL/HOL4Base.thy \
  Import/HOL/HOL4Prob.thy Import/HOL/HOL4Real.thy Import/HOL/HOL4Vec.thy \
  Import/HOL/HOL4Word32.thy Import/HOL/HOL4.thy Import/HOL/ROOT.ML
	@cd Import/HOL; $(ISATOOL) usedir -b $(OUT)/HOL-Complex HOL4

HOLLight: HOL-Complex $(LOG)/HOLLight.gz

$(LOG)/HOLLight.gz: $(OUT)/HOL-Complex $(IMPORTER_HOLLIGHT_FILES) \
  Import/HOLLight/hollight.imp Import/HOLLight/HOLLight.thy \
  Import/HOLLight/ROOT.ML
	@cd Import/HOLLight; $(ISATOOL) usedir -b $(OUT)/HOL-Complex HOLLight


## HOL-NumberTheory

HOL-NumberTheory: HOL $(LOG)/HOL-NumberTheory.gz

$(LOG)/HOL-NumberTheory.gz: $(OUT)/HOL \
  Library/Permutation.thy Library/Primes.thy NumberTheory/Fib.thy \
  NumberTheory/Factorization.thy NumberTheory/BijectionRel.thy \
  NumberTheory/Chinese.thy NumberTheory/EulerFermat.thy \
  NumberTheory/IntFact.thy NumberTheory/IntPrimes.thy \
  NumberTheory/WilsonBij.thy NumberTheory/WilsonRuss.thy \
  NumberTheory/Finite2.thy NumberTheory/Int2.thy NumberTheory/EvenOdd.thy\
  NumberTheory/Residues.thy NumberTheory/Euler.thy NumberTheory/Gauss.thy\
  NumberTheory/Quadratic_Reciprocity.thy Library/Infinite_Set.thy\
  NumberTheory/ROOT.ML
	@$(ISATOOL) usedir -g true $(OUT)/HOL NumberTheory


## HOL-Hoare

HOL-Hoare: HOL $(LOG)/HOL-Hoare.gz

$(LOG)/HOL-Hoare.gz: $(OUT)/HOL Hoare/Arith2.thy \
  Hoare/Examples.thy Hoare/hoare.ML Hoare/Hoare.thy \
  Hoare/Heap.thy Hoare/HeapSyntax.thy Hoare/Pointer_Examples.thy \
  Hoare/ROOT.ML Hoare/ExamplesAbort.thy  Hoare/HeapSyntaxAbort.thy \
  Hoare/hoareAbort.ML Hoare/HoareAbort.thy Hoare/SchorrWaite.thy \
  Hoare/Separation.thy Hoare/SepLogHeap.thy \
  Hoare/document/root.tex Hoare/document/root.bib
	@$(ISATOOL) usedir $(OUT)/HOL Hoare


## HOL-HoareParallel

HOL-HoareParallel: HOL $(LOG)/HOL-HoareParallel.gz

$(LOG)/HOL-HoareParallel.gz: $(OUT)/HOL HoareParallel/Gar_Coll.thy \
  HoareParallel/Graph.thy HoareParallel/Mul_Gar_Coll.thy	   \
  HoareParallel/OG_Com.thy HoareParallel/OG_Examples.thy	   \
  HoareParallel/OG_Hoare.thy HoareParallel/OG_Syntax.thy	   \
  HoareParallel/OG_Tactics.thy HoareParallel/OG_Tran.thy	   \
  HoareParallel/Quote_Antiquote.thy                                \
  HoareParallel/RG_Com.thy HoareParallel/RG_Examples.thy	   \
  HoareParallel/RG_Hoare.thy HoareParallel/RG_Syntax.thy	   \
  HoareParallel/RG_Tran.thy HoareParallel/ROOT.ML		   \
  HoareParallel/document/root.tex HoareParallel/document/root.bib
	@$(ISATOOL) usedir -g true $(OUT)/HOL HoareParallel


## HOL-Algebra

HOL-Algebra: HOL $(LOG)/HOL-Algebra.gz

$(LOG)/HOL-Algebra.gz: $(OUT)/HOL Algebra/ROOT.ML Library/Primes.thy	\
  Library/FuncSet.thy Algebra/AbelCoset.thy Algebra/Bij.thy		\
  Algebra/Coset.thy Algebra/Exponent.thy Algebra/FiniteProduct.thy	\
  Algebra/Group.thy Algebra/Ideal.thy Algebra/IntRing.thy		\
  Algebra/Lattice.thy Algebra/Module.thy Algebra/QuotRing.thy		\
  Algebra/Ring.thy Algebra/RingHom.thy Algebra/Sylow.thy		\
  Algebra/UnivPoly.thy Algebra/abstract/Abstract.thy			\
  Algebra/abstract/Factor.thy Algebra/abstract/Field.thy		\
  Algebra/abstract/Ideal2.thy Algebra/abstract/PID.thy			\
  Algebra/abstract/Ring2.thy Algebra/abstract/RingHomo.thy		\
  Algebra/document/root.tex Algebra/poly/LongDiv.thy			\
  Algebra/poly/PolyHomo.thy Algebra/poly/Polynomial.thy			\
  Algebra/poly/UnivPoly2.thy Algebra/ringsimp.ML
	@cd Algebra; $(ISATOOL) usedir -b -g true $(OUT)/HOL HOL-Algebra

## HOL-Auth

HOL-Auth: HOL $(LOG)/HOL-Auth.gz

$(LOG)/HOL-Auth.gz: $(OUT)/HOL Library/NatPair.thy \
  Auth/CertifiedEmail.thy Auth/Event.thy \
  Auth/Message.thy Auth/NS_Public.thy Auth/NS_Public_Bad.thy \
  Auth/NS_Shared.thy Auth/OtwayRees.thy Auth/OtwayReesBella.thy Auth/OtwayRees_AN.thy \
  Auth/OtwayRees_Bad.thy Auth/Public.thy Auth/ROOT.ML \
  Auth/Recur.thy Auth/Shared.thy \
  Auth/TLS.thy Auth/WooLam.thy Auth/Kerberos_BAN.thy Auth/Kerberos_BAN_Gets.thy \
  Auth/KerberosIV.thy Auth/KerberosIV_Gets.thy Auth/KerberosV.thy \
  Auth/Yahalom.thy Auth/Yahalom2.thy Auth/Yahalom_Bad.thy \
  Auth/ZhouGollmann.thy \
  Auth/Guard/Analz.thy Auth/Guard/Extensions.thy Auth/Guard/GuardK.thy \
  Auth/Guard/Guard_Public.thy Auth/Guard/Guard_Shared.thy \
  Auth/Guard/Guard.thy Auth/Guard/List_Msg.thy \
  Auth/Guard/Guard_NS_Public.thy Auth/Guard/Guard_OtwayRees.thy \
  Auth/Guard/P1.thy Auth/Guard/P2.thy \
  Auth/Guard/Proto.thy Auth/Guard/Guard_Yahalom.thy\
  Auth/Smartcard/EventSC.thy Auth/Smartcard/ShoupRubinBella.thy\
  Auth/Smartcard/ShoupRubin.thy Auth/Smartcard/Smartcard.thy\
  Auth/document/root.tex
	@$(ISATOOL) usedir -g true $(OUT)/HOL Auth


## HOL-UNITY

HOL-UNITY: HOL $(LOG)/HOL-UNITY.gz

$(LOG)/HOL-UNITY.gz: $(OUT)/HOL Library/Multiset.thy UNITY/ROOT.ML \
  UNITY/UNITY_Main.thy UNITY/UNITY_tactics.ML \
  UNITY/Comp.thy UNITY/Constrains.thy UNITY/Detects.thy UNITY/ELT.thy \
  UNITY/Extend.thy UNITY/FP.thy UNITY/Follows.thy UNITY/Guar.thy\
  UNITY/Lift_prog.thy UNITY/ListOrder.thy UNITY/ProgressSets.thy\
  UNITY/PPROD.thy  UNITY/Project.thy UNITY/Rename.thy UNITY/Transformers.thy\
  UNITY/SubstAx.thy UNITY/UNITY.thy UNITY/Union.thy UNITY/WFair.thy \
  UNITY/Simple/Channel.thy UNITY/Simple/Common.thy  \
  UNITY/Simple/Deadlock.thy UNITY/Simple/Lift.thy UNITY/Simple/Mutex.thy  \
  UNITY/Simple/NSP_Bad.thy UNITY/Simple/Network.thy\
  UNITY/Simple/Reach.thy UNITY/Simple/Reachability.thy UNITY/Simple/Token.thy\
  UNITY/Comp/Alloc.thy UNITY/Comp/AllocBase.thy UNITY/Comp/AllocImpl.thy \
  UNITY/Comp/Client.thy UNITY/Comp/Counter.thy UNITY/Comp/Counterc.thy \
  UNITY/Comp/Handshake.thy UNITY/Comp/PriorityAux.thy \
  UNITY/Comp/Priority.thy UNITY/Comp/Progress.thy \
  UNITY/Comp/TimerArray.thy\
  UNITY/document/root.tex 
	@$(ISATOOL) usedir -g true $(OUT)/HOL UNITY


## HOL-Unix

HOL-Unix: HOL $(LOG)/HOL-Unix.gz

$(LOG)/HOL-Unix.gz: $(OUT)/HOL Library/Nested_Environment.thy \
  Library/List_Prefix.thy Unix/ROOT.ML Unix/Unix.thy \
  Unix/document/root.bib Unix/document/root.tex
	@$(ISATOOL) usedir $(OUT)/HOL Unix

## HOL-ZF

HOL-ZF: HOL $(LOG)/HOL-ZF.gz

$(LOG)/HOL-ZF.gz: $(OUT)/HOL ZF/ROOT.ML  \
  ZF/Helper.thy ZF/LProd.thy ZF/HOLZF.thy \
  ZF/MainZF.thy ZF/Games.thy ZF/document/root.tex
	@$(ISATOOL) usedir $(OUT)/HOL ZF

## HOL-Modelcheck

HOL-Modelcheck: HOL $(LOG)/HOL-Modelcheck.gz

$(LOG)/HOL-Modelcheck.gz: $(OUT)/HOL Modelcheck/CTL.thy \
  Modelcheck/EindhovenExample.thy Modelcheck/EindhovenSyn.thy \
  Modelcheck/MuCalculus.thy Modelcheck/MuckeExample1.thy \
  Modelcheck/MuckeExample2.thy Modelcheck/MuckeSyn.thy \
  Modelcheck/ROOT.ML Modelcheck/mucke_oracle.ML
	@$(ISATOOL) usedir $(OUT)/HOL Modelcheck


## HOL-Lambda

HOL-Lambda: HOL $(LOG)/HOL-Lambda.gz

$(LOG)/HOL-Lambda.gz: $(OUT)/HOL \
  Lambda/Commutation.thy Lambda/Eta.thy Lambda/InductTermi.thy Lambda/Lambda.thy \
  Lambda/ListApplication.thy Lambda/ListBeta.thy Lambda/ListOrder.thy \
  Lambda/ParRed.thy Lambda/StrongNorm.thy Lambda/Type.thy \
  Lambda/WeakNorm.thy Lambda/ROOT.ML \
  Lambda/document/root.bib Lambda/document/root.tex
	@$(ISATOOL) usedir -g true -m no_brackets $(OUT)/HOL Lambda


## HOL-Prolog

HOL-Prolog: HOL $(LOG)/HOL-Prolog.gz

$(LOG)/HOL-Prolog.gz: $(OUT)/HOL Prolog/ROOT.ML Prolog/prolog.ML Prolog/HOHH.thy \
  Prolog/Test.thy Prolog/Func.thy Prolog/Type.thy
	@$(ISATOOL) usedir $(OUT)/HOL Prolog


## HOL-W0

HOL-W0: HOL $(LOG)/HOL-W0.gz

$(LOG)/HOL-W0.gz: $(OUT)/HOL W0/ROOT.ML W0/W0.thy W0/document/root.tex
	@$(ISATOOL) usedir $(OUT)/HOL W0


## HOL-MicroJava

HOL-MicroJava: HOL $(LOG)/HOL-MicroJava.gz

$(LOG)/HOL-MicroJava.gz: $(OUT)/HOL Library/ExecutableSet.thy \
  MicroJava/ROOT.ML \
  MicroJava/Comp/AuxLemmas.thy \
  MicroJava/Comp/CorrComp.thy \
  MicroJava/Comp/CorrCompTp.thy \
  MicroJava/Comp/DefsComp.thy \
  MicroJava/Comp/Index.thy \
  MicroJava/Comp/LemmasComp.thy \
  MicroJava/Comp/NatCanonify.thy \
  MicroJava/Comp/TranslComp.thy \
  MicroJava/Comp/TranslCompTp.thy \
  MicroJava/Comp/TypeInf.thy \
  MicroJava/J/Conform.thy MicroJava/J/Eval.thy MicroJava/J/JBasis.thy \
  MicroJava/J/JTypeSafe.thy MicroJava/J/Decl.thy MicroJava/J/State.thy \
  MicroJava/J/Term.thy MicroJava/J/Type.thy MicroJava/J/TypeRel.thy \
  MicroJava/J/WellForm.thy MicroJava/J/Value.thy \
  MicroJava/J/WellType.thy MicroJava/J/Example.thy \
  MicroJava/J/JListExample.thy \
  MicroJava/JVM/JVMExec.thy MicroJava/JVM/JVMInstructions.thy\
  MicroJava/JVM/JVMState.thy MicroJava/JVM/JVMExecInstr.thy\
  MicroJava/JVM/JVMListExample.thy MicroJava/JVM/JVMExceptions.thy \
  MicroJava/BV/BVSpec.thy MicroJava/BV/BVSpecTypeSafe.thy \
  MicroJava/BV/Correct.thy MicroJava/BV/Err.thy MicroJava/BV/JType.thy \
  MicroJava/BV/JVM.thy MicroJava/BV/JVMType.thy MicroJava/BV/Kildall.thy \
  MicroJava/BV/LBVSpec.thy MicroJava/BV/Listn.thy MicroJava/BV/Opt.thy \
  MicroJava/BV/Product.thy MicroJava/BV/Semilat.thy \
  MicroJava/BV/Effect.thy MicroJava/BV/EffectMono.thy \
  MicroJava/BV/Typing_Framework.thy MicroJava/BV/Typing_Framework_err.thy \
  MicroJava/BV/Typing_Framework_JVM.thy MicroJava/BV/BVExample.thy \
  MicroJava/BV/LBVSpec.thy MicroJava/BV/LBVCorrect.thy \
  MicroJava/BV/LBVComplete.thy MicroJava/BV/LBVJVM.thy \
  MicroJava/document/root.bib MicroJava/document/root.tex \
  MicroJava/document/introduction.tex
	@$(ISATOOL) usedir -g true $(OUT)/HOL MicroJava


## HOL-NanoJava

HOL-NanoJava: HOL $(LOG)/HOL-NanoJava.gz

$(LOG)/HOL-NanoJava.gz: $(OUT)/HOL NanoJava/ROOT.ML \
  NanoJava/Term.thy NanoJava/Decl.thy NanoJava/TypeRel.thy NanoJava/State.thy \
  NanoJava/OpSem.thy NanoJava/AxSem.thy NanoJava/AxSem.thy \
  NanoJava/document/root.bib NanoJava/document/root.tex
	@$(ISATOOL) usedir -g true $(OUT)/HOL NanoJava


## HOL-Bali

HOL-Bali: HOL $(LOG)/HOL-Bali.gz

$(LOG)/HOL-Bali.gz: $(OUT)/HOL Bali/AxCompl.thy Bali/AxExample.thy	\
  Bali/AxSem.thy Bali/AxSound.thy Bali/Basis.thy Bali/Conform.thy	\
  Bali/Decl.thy Bali/DeclConcepts.thy Bali/Eval.thy Bali/Evaln.thy	\
  Bali/Example.thy Bali/Name.thy Bali/ROOT.ML Bali/State.thy		\
  Bali/Table.thy Bali/Term.thy Bali/Trans.thy Bali/Type.thy		\
  Bali/TypeRel.thy Bali/TypeSafe.thy Bali/Value.thy Bali/WellForm.thy	\
  Bali/DefiniteAssignment.thy Bali/DefiniteAssignmentCorrect.thy \
  Bali/WellType.thy Bali/document/root.tex
	@$(ISATOOL) usedir -g true $(OUT)/HOL Bali


## HOL-Extraction

HOL-Extraction: HOL $(LOG)/HOL-Extraction.gz

$(LOG)/HOL-Extraction.gz: $(OUT)/HOL Library/EfficientNat.thy \
  Extraction/Higman.thy Extraction/ROOT.ML Extraction/Pigeonhole.thy \
  Extraction/QuotRem.thy \
  Extraction/Warshall.thy Extraction/document/root.tex \
  Extraction/document/root.bib
	@$(ISATOOL) usedir $(OUT)/HOL Extraction


## HOL-IOA

HOL-IOA: HOL $(LOG)/HOL-IOA.gz

$(LOG)/HOL-IOA.gz: $(OUT)/HOL IOA/Asig.thy IOA/IOA.thy \
  IOA/ROOT.ML IOA/Solve.thy
	@$(ISATOOL) usedir $(OUT)/HOL IOA


## HOL-AxClasses

HOL-AxClasses: HOL $(LOG)/HOL-AxClasses.gz

$(LOG)/HOL-AxClasses.gz: $(OUT)/HOL AxClasses/Group.thy \
  AxClasses/Product.thy AxClasses/ROOT.ML AxClasses/Semigroups.thy
	@$(ISATOOL) usedir $(OUT)/HOL AxClasses


## HOL-Lattice

HOL-Lattice: HOL $(LOG)/HOL-Lattice.gz

$(LOG)/HOL-Lattice.gz: $(OUT)/HOL Lattice/Bounds.thy \
  Lattice/CompleteLattice.thy Lattice/Lattice.thy Lattice/Orders.thy \
  Lattice/ROOT.ML Lattice/document/root.tex
	@$(ISATOOL) usedir $(OUT)/HOL Lattice


## HOL-ex

HOL-ex: HOL $(LOG)/HOL-ex.gz

$(LOG)/HOL-ex.gz: $(OUT)/HOL Library/Commutative_Ring.thy                       \
  ex/Abstract_NAT.thy ex/Antiquote.thy ex/BT.thy ex/BinEx.thy                   \
  ex/Chinese.thy ex/Classical.thy ex/Classpackage.thy                           \
  ex/Eval_examples.thy ex/Random.thy                                            \
  ex/Codegenerator.thy ex/Codegenerator_Rat.thy                                 \
  ex/Commutative_RingEx.thy ex/Hex_Bin_Examples.thy                             \
  ex/Commutative_Ring_Complete.thy ex/ExecutableContent.thy                     \
  ex/Fundefs.thy ex/Guess.thy ex/Hebrew.thy ex/Binary.thy                       \
  ex/Higher_Order_Logic.thy ex/Hilbert_Classical.thy ex/InSort.thy		\
  ex/InductiveInvariant.thy ex/InductiveInvariant_examples.thy			\
  ex/Intuitionistic.thy ex/Lagrange.thy ex/Locales.thy				\
  ex/LocaleTest2.thy ex/MT.ML							\
  ex/MT.thy ex/MergeSort.thy ex/MonoidGroup.thy ex/Multiquote.thy		\
  ex/NatSum.thy ex/PER.thy ex/PresburgerEx.thy ex/Primrec.thy			\
  ex/Puzzle.thy ex/Qsort.thy ex/Quickcheck_Examples.thy				\
  ex/Reflection.thy ex/ReflectionEx.thy ex/ROOT.ML ex/Recdefs.thy		\
  ex/Records.thy ex/Reflected_Presburger.thy ex/Refute_Examples.thy		\
  ex/SAT_Examples.thy ex/svc_oracle.ML ex/SVC_Oracle.thy 			\
  ex/Sudoku.thy ex/Tarski.thy ex/Unification.thy ex/document/root.bib		\
  ex/document/root.tex ex/mesontest2.ML ex/mesontest2.thy ex/reflection.ML 	\
  ex/set.thy ex/svc_funcs.ML ex/svc_test.thy Library/Parity.thy Library/GCD.thy
	@$(ISATOOL) usedir $(OUT)/HOL ex


## HOL-Isar_examples

HOL-Isar_examples: HOL $(LOG)/HOL-Isar_examples.gz

$(LOG)/HOL-Isar_examples.gz: $(OUT)/HOL Isar_examples/BasicLogic.thy \
  Isar_examples/Cantor.thy Isar_examples/Drinker.thy \
  Isar_examples/ExprCompiler.thy Isar_examples/Fibonacci.thy \
  Isar_examples/Group.thy Isar_examples/Hoare.thy Isar_examples/HoareEx.thy \
  Isar_examples/KnasterTarski.thy Isar_examples/MutilatedCheckerboard.thy \
  Isar_examples/NestedDatatype.thy Isar_examples/Peirce.thy \
  Isar_examples/Puzzle.thy Isar_examples/Summation.thy \
  Isar_examples/ROOT.ML Isar_examples/document/proof.sty \
  Isar_examples/document/root.bib Isar_examples/document/root.tex \
  Isar_examples/document/style.tex Hoare/hoare.ML
	@$(ISATOOL) usedir $(OUT)/HOL Isar_examples


## HOL-SET-Protocol

HOL-SET-Protocol: HOL $(LOG)/HOL-SET-Protocol.gz

$(LOG)/HOL-SET-Protocol.gz: $(OUT)/HOL SET-Protocol/ROOT.ML \
  SET-Protocol/MessageSET.thy\
  SET-Protocol/EventSET.thy\
  SET-Protocol/PublicSET.thy\
  SET-Protocol/Cardholder_Registration.thy\
  SET-Protocol/Merchant_Registration.thy\
  SET-Protocol/Purchase.thy\
  SET-Protocol/document/root.tex 
	@$(ISATOOL) usedir -g true $(OUT)/HOL SET-Protocol


## HOL-Complex-Matrix

HOL-Complex-Matrix: HOL-Complex $(OUT)/HOL-Complex-Matrix

$(OUT)/HOL-Complex-Matrix: $(OUT)/HOL-Complex \
  Matrix/MatrixGeneral.thy Matrix/Matrix.thy Matrix/SparseMatrix.thy Matrix/LP.thy \
  Matrix/document/root.tex Matrix/ROOT.ML \
  Matrix/cplex/Cplex.thy Matrix/cplex/CplexMatrixConverter.ML \
  Matrix/cplex/Cplex_tools.ML Matrix/cplex/FloatSparseMatrix.thy \
  Matrix/cplex/FloatSparseMatrixBuilder.ML Matrix/cplex/fspmlp.ML \
  Matrix/cplex/MatrixLP.thy Matrix/cplex/matrixlp.ML
	@cd Matrix; $(ISATOOL) usedir -b -g true $(OUT)/HOL-Complex HOL-Complex-Matrix


## TLA

TLA: HOL $(OUT)/TLA

$(OUT)/TLA: $(OUT)/HOL TLA/Action.thy TLA/Init.thy TLA/Intensional.thy \
  TLA/ROOT.ML TLA/Stfun.thy TLA/TLA.thy
	@cd TLA; $(ISATOOL) usedir -b $(OUT)/HOL TLA


## TLA-Inc

TLA-Inc: TLA $(LOG)/TLA-Inc.gz

$(LOG)/TLA-Inc.gz: $(OUT)/TLA TLA/Inc/Inc.thy
	@cd TLA; $(ISATOOL) usedir $(OUT)/TLA Inc


## TLA-Buffer

TLA-Buffer: TLA $(LOG)/TLA-Buffer.gz

$(LOG)/TLA-Buffer.gz: $(OUT)/TLA TLA/Buffer/Buffer.thy TLA/Buffer/DBuffer.thy
	@cd TLA; $(ISATOOL) usedir $(OUT)/TLA Buffer


## TLA-Memory

TLA-Memory: TLA $(LOG)/TLA-Memory.gz

$(LOG)/TLA-Memory.gz: $(OUT)/TLA TLA/Memory/MIParameters.thy \
  TLA/Memory/MemClerk.thy TLA/Memory/MemClerkParameters.thy \
  TLA/Memory/Memory.thy TLA/Memory/MemoryImplementation.thy \
  TLA/Memory/MemoryParameters.thy TLA/Memory/ProcedureInterface.thy TLA/Memory/RPC.thy \
  TLA/Memory/RPCMemoryParams.thy TLA/Memory/RPCParameters.thy
	@cd TLA; $(ISATOOL) usedir $(OUT)/TLA Memory


## HOL-Nominal

HOL-Nominal: HOL $(OUT)/HOL-Nominal

$(OUT)/HOL-Nominal: $(OUT)/HOL Nominal/ROOT.ML \
  Nominal/Nominal.thy \
  Nominal/nominal_atoms.ML \
  Nominal/nominal_fresh_fun.ML \
  Nominal/nominal_induct.ML \
  Nominal/nominal_inductive.ML \
  Nominal/nominal_package.ML \
  Nominal/nominal_permeq.ML \
  Nominal/nominal_primrec.ML \
  Nominal/nominal_thmdecls.ML \
  Library/Infinite_Set.thy
	@cd Nominal; $(ISATOOL) usedir -b -g true $(OUT)/HOL HOL-Nominal


## HOL-Nominal-Examples

HOL-Nominal-Examples: HOL-Nominal $(LOG)/HOL-Nominal-Examples.gz

$(LOG)/HOL-Nominal-Examples.gz: $(OUT)/HOL-Nominal 	\
  Nominal/Examples/ROOT.ML \
  Nominal/Examples/CR.thy \
  Nominal/Examples/CR_Takahashi.thy \
##  Nominal/Examples/Class.thy \
  Nominal/Examples/Compile.thy \
  Nominal/Examples/Fsub.thy \
  Nominal/Examples/Lambda_mu.thy \
  Nominal/Examples/Lam_Funs.thy	\
  Nominal/Examples/SN.thy \
  Nominal/Examples/Weakening.thy \
  Nominal/Examples/Crary.thy \
  Nominal/Examples/SOS.thy \
  Nominal/Examples/LocalWeakening.thy
	@cd Nominal; $(ISATOOL) usedir $(OUT)/HOL-Nominal Examples


## clean

clean:
	@rm -f  $(OUT)/HOL $(OUT)/HOL-Complex $(OUT)/HOL-Nominal $(OUT)/TLA \
		$(LOG)/HOL.gz $(LOG)/TLA.gz \
		$(LOG)/HOL-Isar_examples.gz $(LOG)/HOL-Induct.gz \
		$(LOG)/HOL-ex.gz $(LOG)/HOL-Subst.gz $(LOG)/HOL-IMP.gz \
		$(LOG)/HOL-IMPP.gz $(LOG)/HOL-Hoare.gz \
		$(LOG)/HOL-HoareParallel.gz \
		$(LOG)/HOL-Lex.gz $(LOG)/HOL-Algebra.gz \
		$(LOG)/HOL-Auth.gz $(LOG)/HOL-UNITY.gz \
		$(LOG)/HOL-Modelcheck.gz $(LOG)/HOL-Lambda.gz \
                $(LOG)/HOL-Bali.gz \
		$(LOG)/HOL-MicroJava.gz $(LOG)/HOL-NanoJava.gz \
                $(LOG)/HOL-Nominal-Examples.gz \
		$(LOG)/HOL-IOA.gz $(LOG)/HOL-AxClasses \
		$(LOG)/HOL-Lattice $(LOG)/HOL-Complex-Matrix \
		$(LOG)/HOL-Complex.gz \
		$(LOG)/HOL-Complex-ex.gz \
		$(LOG)/HOL-Complex-HahnBanach.gz $(LOG)/HOL-SET-Protocol.gz \
                $(LOG)/TLA-Inc.gz $(LOG)/TLA-Buffer.gz $(LOG)/TLA-Memory.gz \
		$(LOG)/HOL-Library.gz $(LOG)/HOL-Unix.gz