src/HOL/IsaMakefile
author haftmann
Fri, 19 Jun 2009 21:08:07 +0200
changeset 31726 ffd2dc631d88
parent 31719 29f5b20e8ee8
parent 31723 f5cafe803b55
child 31733 ec013c3ade5a
permissions -rw-r--r--
merged

#
# IsaMakefile for HOL
#

## targets

default: HOL
generate: HOL-Generate-HOL HOL-Generate-HOLLight
images: HOL HOL-Base HOL-Plain HOL-Main HOL-Algebra HOL-Nominal HOL-NSA HOL-Word TLA HOL4

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

proofterms: HOL HOL-Extraction HOL-Lambda

all: test images


## global settings

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


## HOL

HOL: Pure $(OUT)/HOL

HOL-Base: Pure $(OUT)/HOL-Base

HOL-Plain: Pure $(OUT)/HOL-Plain

HOL-Main: Pure $(OUT)/HOL-Main

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

$(OUT)/Pure: Pure

BASE_DEPENDENCIES = $(OUT)/Pure \
  $(SRC)/Provers/blast.ML \
  $(SRC)/Provers/clasimp.ML \
  $(SRC)/Provers/classical.ML \
  $(SRC)/Provers/hypsubst.ML \
  $(SRC)/Provers/quantifier1.ML \
  $(SRC)/Provers/splitter.ML \
  $(SRC)/Tools/IsaPlanner/isand.ML \
  $(SRC)/Tools/IsaPlanner/rw_inst.ML \
  $(SRC)/Tools/IsaPlanner/rw_tools.ML \
  $(SRC)/Tools/IsaPlanner/zipper.ML \
  $(SRC)/Tools/atomize_elim.ML \
  $(SRC)/Tools/auto_solve.ML \
  $(SRC)/Tools/code/code_haskell.ML \
  $(SRC)/Tools/code/code_ml.ML \
  $(SRC)/Tools/code/code_preproc.ML \
  $(SRC)/Tools/code/code_printer.ML \
  $(SRC)/Tools/code/code_target.ML \
  $(SRC)/Tools/code/code_thingol.ML \
  $(SRC)/Tools/coherent.ML \
  $(SRC)/Tools/eqsubst.ML \
  $(SRC)/Tools/induct.ML \
  $(SRC)/Tools/intuitionistic.ML \
  $(SRC)/Tools/induct_tacs.ML \
  $(SRC)/Tools/nbe.ML \
  $(SRC)/Tools/quickcheck.ML \
  $(SRC)/Tools/project_rule.ML \
  $(SRC)/Tools/random_word.ML \
  $(SRC)/Tools/value.ML \
  $(SRC)/Tools/Code_Generator.thy \
  HOL.thy \
  Tools/hologic.ML \
  Tools/recfun_codegen.ML \
  Tools/simpdata.ML \

$(OUT)/HOL-Base: base.ML $(BASE_DEPENDENCIES)
	@$(ISABELLE_TOOL) usedir -b -f base.ML -d false -g false $(OUT)/Pure HOL-Base

PLAIN_DEPENDENCIES = $(BASE_DEPENDENCIES)\
  Datatype.thy \
  Divides.thy \
  Extraction.thy \
  Finite_Set.thy \
  Fun.thy \
  FunDef.thy \
  Inductive.thy \
  Lattices.thy \
  Nat.thy \
  OrderedGroup.thy \
  Orderings.thy \
  Option.thy \
  Plain.thy \
  Power.thy \
  Predicate.thy \
  Product_Type.thy \
  Record.thy \
  Refute.thy \
  Relation.thy \
  Ring_and_Field.thy \
  SAT.thy \
  Set.thy \
  Sum_Type.thy \
  Tools/arith_data.ML \
  Tools/cnf_funcs.ML \
  Tools/datatype_package/datatype_abs_proofs.ML \
  Tools/datatype_package/datatype_aux.ML \
  Tools/datatype_package/datatype_case.ML \
  Tools/datatype_package/datatype_codegen.ML \
  Tools/datatype_package/datatype.ML \
  Tools/datatype_package/datatype_prop.ML \
  Tools/datatype_package/datatype_realizer.ML \
  Tools/datatype_package/datatype_rep_proofs.ML \
  Tools/dseq.ML \
  Tools/function_package/auto_term.ML \
  Tools/function_package/context_tree.ML \
  Tools/function_package/decompose.ML \
  Tools/function_package/descent.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.ML \
  Tools/function_package/induction_scheme.ML \
  Tools/function_package/inductive_wrap.ML \
  Tools/function_package/lexicographic_order.ML \
  Tools/function_package/measure_functions.ML \
  Tools/function_package/mutual.ML \
  Tools/function_package/pattern_split.ML \
  Tools/function_package/scnp_reconstruct.ML \
  Tools/function_package/scnp_solve.ML \
  Tools/function_package/size.ML \
  Tools/function_package/sum_tree.ML \
  Tools/function_package/termination.ML \
  Tools/inductive_codegen.ML \
  Tools/inductive.ML \
  Tools/inductive_realizer.ML \
  Tools/inductive_set.ML \
  Tools/lin_arith.ML \
  Tools/nat_arith.ML \
  Tools/old_primrec.ML \
  Tools/primrec.ML \
  Tools/prop_logic.ML \
  Tools/record.ML \
  Tools/refute.ML \
  Tools/refute_isar.ML \
  Tools/rewrite_hol_proof.ML \
  Tools/sat_funcs.ML \
  Tools/sat_solver.ML \
  Tools/split_rule.ML \
  Tools/typecopy.ML \
  Tools/typedef_codegen.ML \
  Tools/typedef.ML \
  Transitive_Closure.thy \
  Typedef.thy \
  Wellfounded.thy \
  $(SRC)/Provers/Arith/abel_cancel.ML \
  $(SRC)/Provers/Arith/cancel_div_mod.ML \
  $(SRC)/Provers/Arith/cancel_sums.ML \
  $(SRC)/Provers/Arith/fast_lin_arith.ML \
  $(SRC)/Provers/order.ML \
  $(SRC)/Provers/trancl.ML \
  $(SRC)/Tools/rat.ML

$(OUT)/HOL-Plain: plain.ML $(PLAIN_DEPENDENCIES)
	@$(ISABELLE_TOOL) usedir -b -f plain.ML -g true $(OUT)/Pure HOL-Plain

MAIN_DEPENDENCIES = $(PLAIN_DEPENDENCIES) \
  ATP_Linkup.thy \
  Code_Eval.thy \
  Code_Numeral.thy \
  Equiv_Relations.thy \
  Groebner_Basis.thy \
  Hilbert_Choice.thy \
  IntDiv.thy \
  Int.thy \
  List.thy \
  Main.thy \
  Map.thy \
  Nat_Numeral.thy \
  Presburger.thy \
  Quickcheck.thy \
  Random.thy \
  Recdef.thy \
  SetInterval.thy \
  String.thy \
  Typerep.thy \
  $(SRC)/Provers/Arith/assoc_fold.ML \
  $(SRC)/Provers/Arith/cancel_numeral_factor.ML \
  $(SRC)/Provers/Arith/cancel_numerals.ML \
  $(SRC)/Provers/Arith/combine_numerals.ML \
  $(SRC)/Provers/Arith/extract_common_term.ML \
  $(SRC)/Tools/Metis/metis.ML \
  Tools/Groebner_Basis/groebner.ML \
  Tools/Groebner_Basis/misc.ML \
  Tools/Groebner_Basis/normalizer_data.ML \
  Tools/Groebner_Basis/normalizer.ML \
  Tools/atp_manager.ML \
  Tools/atp_wrapper.ML \
  Tools/int_arith.ML \
  Tools/list_code.ML \
  Tools/meson.ML \
  Tools/metis_tools.ML \
  Tools/nat_numeral_simprocs.ML \
  Tools/numeral.ML \
  Tools/numeral_simprocs.ML \
  Tools/numeral_syntax.ML \
  Tools/polyhash.ML \
  Tools/quickcheck_generators.ML \
  Tools/Qelim/cooper_data.ML \
  Tools/Qelim/cooper.ML \
  Tools/Qelim/generated_cooper.ML \
  Tools/Qelim/presburger.ML \
  Tools/Qelim/qelim.ML \
  Tools/recdef.ML \
  Tools/res_atp.ML \
  Tools/res_axioms.ML \
  Tools/res_clause.ML \
  Tools/res_hol_clause.ML \
  Tools/res_reconstruct.ML \
  Tools/choice_specification.ML \
  Tools/string_code.ML \
  Tools/string_syntax.ML \
  Tools/TFL/casesplit.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

$(OUT)/HOL-Main: main.ML $(MAIN_DEPENDENCIES)
	@$(ISABELLE_TOOL) usedir -b -f main.ML -g true $(OUT)/Pure HOL-Main

$(OUT)/HOL: ROOT.ML $(MAIN_DEPENDENCIES) \
  Archimedean_Field.thy \
  Complex_Main.thy \
  Complex.thy \
  Deriv.thy \
  Fact.thy \
  Integration.thy \
  Lim.thy \
  Limits.thy \
  Ln.thy \
  Log.thy \
  MacLaurin.thy \
  NatTransfer.thy \
  NthRoot.thy \
  SEQ.thy \
  Series.thy \
  Taylor.thy \
  Transcendental.thy \
  GCD.thy \
  Parity.thy \
  Lubs.thy \
  PReal.thy \
  Rational.thy \
  RComplete.thy \
  RealDef.thy \
  RealPow.thy \
  Real.thy \
  RealVector.thy \
  Tools/float_syntax.ML \
  Tools/transfer_data.ML \
  Tools/Qelim/ferrante_rackoff_data.ML \
  Tools/Qelim/ferrante_rackoff.ML \
  Tools/Qelim/langford_data.ML \
  Tools/Qelim/langford.ML
	@$(ISABELLE_TOOL) usedir $(HOL_USEDIR_OPTIONS) -b -g true $(OUT)/Pure HOL


## HOL-Library

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


$(LOG)/HOL-Library.gz: $(OUT)/HOL Library/SetsAndFunctions.thy		\
  Library/Abstract_Rat.thy \
  Library/BigO.thy Library/ContNotDenum.thy Library/Efficient_Nat.thy	\
  Library/Euclidean_Space.thy Library/Sum_Of_Squares.thy Library/positivstellensatz.ML	\
  Library/Convex_Euclidean_Space.thy \
  Library/sum_of_squares.ML Library/Glbs.thy Library/normarith.ML \
  Library/Executable_Set.thy Library/Infinite_Set.thy			\
  Library/FuncSet.thy Library/Permutations.thy Library/Determinants.thy\
  Library/Bit.thy Library/Topology_Euclidean_Space.thy \
  Library/Finite_Cartesian_Product.thy \
  Library/FrechetDeriv.thy \
  Library/Fundamental_Theorem_Algebra.thy \
  Library/Inner_Product.thy Library/Lattice_Syntax.thy \
  Library/Legacy_GCD.thy \
  Library/Library.thy Library/List_Prefix.thy Library/State_Monad.thy	\
  Library/Nat_Int_Bij.thy Library/Multiset.thy Library/Permutation.thy	\
  Library/Primes.thy Library/Pocklington.thy Library/Quotient.thy	\
  Library/Quicksort.thy Library/Nat_Infinity.thy Library/Word.thy	\
  Library/README.html Library/Continuity.thy Library/Order_Relation.thy \
  Library/Nested_Environment.thy Library/Ramsey.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/Option_ord.thy Library/Sublist_Order.thy			\
  Library/List_lexord.thy Library/Commutative_Ring.thy			\
  Library/comm_ring.ML Library/Coinductive_List.thy			\
  Library/AssocList.thy	Library/Formal_Power_Series.thy	\
  Library/Binomial.thy Library/Eval_Witness.thy				\
  Library/Code_Char.thy				\
  Library/Code_Char_chr.thy Library/Code_Integer.thy			\
  Library/Mapping.thy Library/Numeral_Type.thy Library/Reflection.thy	\
  Library/Boolean_Algebra.thy Library/Countable.thy			\
  Library/Diagonalize.thy Library/RBT.thy Library/Univ_Poly.thy		\
  Library/Poly_Deriv.thy \
  Library/Polynomial.thy \
  Library/Preorder.thy \
  Library/Product_plus.thy \
  Library/Product_Vector.thy \
  Library/Tree.thy \
  Library/Enum.thy Library/Float.thy $(SRC)/Tools/float.ML $(SRC)/HOL/Tools/float_arith.ML \
  Library/reify_data.ML Library/reflection.ML \
  Library/LaTeXsugar.thy Library/OptionalSugar.thy
	@cd Library; $(ISABELLE_TOOL) usedir $(OUT)/HOL Library


## HOL-HahnBanach

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

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


## 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
	@$(ISABELLE_TOOL) 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/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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL IMPP


## HOL-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.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-Import: HOL $(LOG)/HOL-Import.gz

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


## HOL-Generate-HOL

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

$(LOG)/HOL-Generate-HOL.gz: $(OUT)/HOL			\
  $(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; $(ISABELLE_TOOL) usedir $(OUT)/HOL Generate-HOL


## HOL-Generate-HOLLight

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

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


## HOL-Import-HOL

HOL4: HOL $(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 $(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; $(ISABELLE_TOOL) usedir -b $(OUT)/HOL HOL4

HOLLight: HOL $(LOG)/HOLLight.gz

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


## HOL-NewNumberTheory

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

$(LOG)/HOL-NewNumberTheory.gz: $(OUT)/HOL GCD.thy Library/Multiset.thy	\
  NewNumberTheory/Fib.thy NewNumberTheory/Binomial.thy			\
  NewNumberTheory/Residues.thy NewNumberTheory/UniqueFactorization.thy  \
  NewNumberTheory/Cong.thy NewNumberTheory/MiscAlgebra.thy \
  NewNumberTheory/ROOT.ML
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL NewNumberTheory


## 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
	@$(ISABELLE_TOOL) 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.thy Hoare/hoare_tac.ML Hoare/Heap.thy			\
  Hoare/HeapSyntax.thy Hoare/Pointer_Examples.thy Hoare/ROOT.ML		\
  Hoare/ExamplesAbort.thy Hoare/HeapSyntaxAbort.thy			\
  Hoare/HoareAbort.thy Hoare/SchorrWaite.thy Hoare/Separation.thy	\
  Hoare/SepLogHeap.thy Hoare/document/root.tex Hoare/document/root.bib
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL HoareParallel


## HOL-MetisExamples

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

$(LOG)/HOL-MetisExamples.gz: $(OUT)/HOL MetisExamples/ROOT.ML	\
  MetisExamples/Abstraction.thy MetisExamples/BigO.thy		\
  MetisExamples/BT.thy MetisExamples/Message.thy		\
  MetisExamples/Tarski.thy MetisExamples/TransClosure.thy	\
  MetisExamples/set.thy
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL MetisExamples


## HOL-Algebra

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

$(LOG)/HOL-Algebra.gz: $(OUT)/HOL Algebra/ROOT.ML			\
  Library/Binomial.thy Library/FuncSet.thy				\
  Library/Multiset.thy Library/Permutation.thy Library/Primes.thy	\
  Algebra/AbelCoset.thy Algebra/Bij.thy	Algebra/Congruence.thy		\
  Algebra/Coset.thy Algebra/Divisibility.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; $(ISABELLE_TOOL) usedir -b -g true -V outline=/proof,/ML $(OUT)/HOL HOL-Algebra


## HOL-Auth

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

$(LOG)/HOL-Auth.gz: $(OUT)/HOL 						\
  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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL Modelcheck


## HOL-Imperative_HOL

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

$(LOG)/HOL-Imperative_HOL.gz: $(OUT)/HOL Imperative_HOL/Heap.thy \
  Imperative_HOL/Heap_Monad.thy Imperative_HOL/Array.thy \
  Imperative_HOL/Relational.thy \
  Imperative_HOL/Ref.thy Imperative_HOL/Imperative_HOL.thy \
  Imperative_HOL/Imperative_HOL_ex.thy \
  Imperative_HOL/ex/Imperative_Quicksort.thy \
  Imperative_HOL/ex/Subarray.thy \
  Imperative_HOL/ex/Sublist.thy
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL Imperative_HOL


## HOL-SizeChange

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

$(LOG)/HOL-SizeChange.gz: $(OUT)/HOL SizeChange/Kleene_Algebras.thy	\
  SizeChange/Graphs.thy SizeChange/Misc_Tools.thy			\
  SizeChange/Criterion.thy SizeChange/Correctness.thy			\
  SizeChange/Interpretation.thy SizeChange/Implementation.thy		\
  SizeChange/Size_Change_Termination.thy SizeChange/Examples.thy	\
  SizeChange/sct.ML SizeChange/ROOT.ML
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL SizeChange


## HOL-Decision_Procs

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

$(LOG)/HOL-Decision_Procs.gz: $(OUT)/HOL \
  Decision_Procs/Approximation.thy \
  Decision_Procs/Cooper.thy \
  Decision_Procs/cooper_tac.ML \
  Decision_Procs/Dense_Linear_Order.thy \
  Decision_Procs/Ferrack.thy \
  Decision_Procs/ferrack_tac.ML \
  Decision_Procs/MIR.thy \
  Decision_Procs/mir_tac.ML \
  Decision_Procs/Decision_Procs.thy \
  Decision_Procs/ex/Dense_Linear_Order_Ex.thy \
  Decision_Procs/ex/Approximation_Ex.thy \
  Decision_Procs/ROOT.ML
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL Decision_Procs


## HOL-Docs

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

$(LOG)/HOL-Docs.gz: $(OUT)/HOL Docs/Main_Doc.thy Docs/ROOT.ML	\
  Docs/document/root.tex
	@$(ISABELLE_TOOL) usedir -D generated $(OUT)/HOL Docs


## 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/NormalForm.thy	\
  Lambda/ParRed.thy Lambda/Standardization.thy Lambda/StrongNorm.thy	\
  Lambda/Type.thy Lambda/WeakNorm.thy Lambda/ROOT.ML			\
  Lambda/document/root.bib Lambda/document/root.tex
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL W0


## HOL-MicroJava

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

$(LOG)/HOL-MicroJava.gz: $(OUT)/HOL Library/Executable_Set.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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL Bali


## HOL-Extraction

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

$(LOG)/HOL-Extraction.gz: $(OUT)/HOL Library/Efficient_Nat.thy	\
  Extraction/Euclid.thy Extraction/Greatest_Common_Divisor.thy	\
  Extraction/Higman.thy Extraction/Pigeonhole.thy		\
  Extraction/QuotRem.thy Extraction/ROOT.ML Extraction/Util.thy	\
  Extraction/Warshall.thy Extraction/document/root.tex		\
  Extraction/document/root.bib
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL IOA


## 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
	@$(ISABELLE_TOOL) usedir $(OUT)/HOL Lattice


## HOL-ex

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

$(LOG)/HOL-ex.gz: $(OUT)/HOL Library/Commutative_Ring.thy		\
  Library/Primes.thy ex/Abstract_NAT.thy ex/Antiquote.thy		\
  ex/Arith_Examples.thy				\
  ex/Arithmetic_Series_Complex.thy ex/BT.thy ex/BinEx.thy		\
  ex/Binary.thy ex/CTL.thy ex/Chinese.thy ex/Classical.thy		\
  ex/CodegenSML_Test.thy ex/Codegenerator_Candidates.thy				\
  ex/Codegenerator_Pretty.thy ex/Codegenerator_Test.thy \
  ex/Codegenerator_Pretty_Test.thy ex/Coherent.thy				\
  ex/Commutative_RingEx.thy ex/Commutative_Ring_Complete.thy		\
  ex/Efficient_Nat_examples.thy		\
  ex/Eval_Examples.thy				\
  ex/Formal_Power_Series_Examples.thy ex/Fundefs.thy			\
  ex/Groebner_Examples.thy ex/Guess.thy ex/HarmonicSeries.thy		\
  ex/Hebrew.thy ex/Hex_Bin_Examples.thy ex/Higher_Order_Logic.thy	\
  ex/Hilbert_Classical.thy			\
  ex/Induction_Scheme.thy ex/InductiveInvariant.thy			\
  ex/InductiveInvariant_examples.thy ex/Intuitionistic.thy		\
  ex/Lagrange.thy ex/LocaleTest2.thy ex/MT.thy ex/MergeSort.thy		\
  ex/Meson_Test.thy ex/MonoidGroup.thy ex/Multiquote.thy ex/NatSum.thy	\
  ex/Numeral.thy ex/PER.thy ex/PresburgerEx.thy ex/Primrec.thy		\
  ex/Quickcheck_Examples.thy ex/ROOT.ML	\
  ex/Recdefs.thy ex/Records.thy ex/ReflectionEx.thy			\
  ex/Refute_Examples.thy ex/SAT_Examples.thy ex/SVC_Oracle.thy		\
  ex/Serbian.thy ex/Sqrt.thy ex/Sqrt_Script.thy \
  ex/Sudoku.thy ex/Tarski.thy \
  ex/Termination.thy ex/Unification.thy ex/document/root.bib		\
  ex/document/root.tex ex/set.thy ex/svc_funcs.ML ex/svc_test.thy \
  ex/Predicate_Compile.thy ex/predicate_compile.ML ex/Predicate_Compile_ex.thy
	@$(ISABELLE_TOOL) 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_tac.ML
	@$(ISABELLE_TOOL) 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
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL SET-Protocol


## HOL-Matrix

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

$(LOG)/HOL-Matrix.gz: $(OUT)/HOL				\
  $(SRC)/Tools/Compute_Oracle/Compute_Oracle.thy			\
  $(SRC)/Tools/Compute_Oracle/am_compiler.ML				\
  $(SRC)/Tools/Compute_Oracle/am_interpreter.ML				\
  $(SRC)/Tools/Compute_Oracle/am.ML					\
  $(SRC)/Tools/Compute_Oracle/linker.ML					\
  $(SRC)/Tools/Compute_Oracle/am_ghc.ML					\
  $(SRC)/Tools/Compute_Oracle/am_sml.ML					\
  $(SRC)/Tools/Compute_Oracle/compute.ML	\
  Tools/ComputeFloat.thy Tools/float_arith.ML \
  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/FloatSparseMatrixBuilder.ML Matrix/cplex/fspmlp.ML	\
  Matrix/cplex/matrixlp.ML
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL 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; $(ISABELLE_TOOL) 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; $(ISABELLE_TOOL) 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; $(ISABELLE_TOOL) usedir $(OUT)/TLA Buffer


## TLA-Memory

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

$(LOG)/TLA-Memory.gz: $(OUT)/TLA 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; $(ISABELLE_TOOL) 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_inductive2.ML \
  Nominal/nominal.ML \
  Nominal/nominal_permeq.ML \
  Nominal/nominal_primrec.ML \
  Nominal/nominal_thmdecls.ML \
  Library/Infinite_Set.thy
	@cd Nominal; $(ISABELLE_TOOL) 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/CK_Machine.thy \
  Nominal/Examples/CR.thy \
  Nominal/Examples/CR_Takahashi.thy \
  Nominal/Examples/Class.thy \
  Nominal/Examples/Compile.thy \
  Nominal/Examples/Contexts.thy \
  Nominal/Examples/Crary.thy \
  Nominal/Examples/Fsub.thy \
  Nominal/Examples/Height.thy \
  Nominal/Examples/Lam_Funs.thy \
  Nominal/Examples/Lambda_mu.thy \
  Nominal/Examples/LocalWeakening.thy \
  Nominal/Examples/ROOT.ML \
  Nominal/Examples/SN.thy \
  Nominal/Examples/SOS.thy \
  Nominal/Examples/Standardization.thy \
  Nominal/Examples/Support.thy \
  Nominal/Examples/Type_Preservation.thy \
  Nominal/Examples/VC_Condition.thy \
  Nominal/Examples/W.thy \
  Nominal/Examples/Weakening.thy
	@cd Nominal; $(ISABELLE_TOOL) usedir $(OUT)/HOL-Nominal Examples


## HOL-Word

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

$(OUT)/HOL-Word: $(OUT)/HOL Word/ROOT.ML	\
  Library/Boolean_Algebra.thy			\
  Library/Numeral_Type.thy Word/Num_Lemmas.thy Word/TdThs.thy		\
  Word/Size.thy Word/BinGeneral.thy Word/BinOperations.thy		\
  Word/BinBoolList.thy Word/BitSyntax.thy Word/WordDefinition.thy	\
  Word/WordArith.thy Word/WordBitwise.thy Word/WordShift.thy		\
  Word/WordGenLib.thy Word/Word.thy Word/document/root.tex		\
  Word/document/root.bib
	@cd Word; $(ISABELLE_TOOL) usedir -b -g true $(OUT)/HOL HOL-Word


## HOL-Word-Examples

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

$(LOG)/HOL-Word-Examples.gz: $(OUT)/HOL-Word Word/Examples/ROOT.ML	\
  Word/Examples/WordExamples.thy
	@cd Word; $(ISABELLE_TOOL) usedir $(OUT)/HOL-Word Examples


## HOL-Statespace

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

$(LOG)/HOL-Statespace.gz: $(OUT)/HOL Statespace/DistinctTreeProver.thy	\
  Statespace/StateFun.thy Statespace/StateSpaceLocale.thy		\
  Statespace/StateSpaceSyntax.thy Statespace/StateSpaceEx.thy		\
  Statespace/distinct_tree_prover.ML Statespace/state_space.ML		\
  Statespace/state_fun.ML Statespace/document/root.tex
	@$(ISABELLE_TOOL) usedir -g true $(OUT)/HOL Statespace


## HOL-NSA

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

$(OUT)/HOL-NSA: $(OUT)/HOL \
  NSA/CLim.thy \
  NSA/CStar.thy \
  NSA/NSCA.thy \
  NSA/NSComplex.thy \
  NSA/HDeriv.thy \
  NSA/HLim.thy \
  NSA/HLog.thy \
  NSA/HSEQ.thy \
  NSA/HSeries.thy \
  NSA/HTranscendental.thy \
  NSA/Hypercomplex.thy \
  NSA/HyperDef.thy \
  NSA/HyperNat.thy \
  NSA/Hyperreal.thy \
  NSA/Filter.thy \
  NSA/NatStar.thy \
  NSA/NSA.thy \
  NSA/StarDef.thy \
  NSA/Star.thy \
  NSA/transfer.ML \
  Library/Infinite_Set.thy \
  Library/Zorn.thy \
  NSA/ROOT.ML
	@cd NSA; $(ISABELLE_TOOL) usedir -b -g true $(OUT)/HOL HOL-NSA


## HOL-NSA-Examples

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

$(LOG)/HOL-NSA-Examples.gz: $(OUT)/HOL-NSA NSA/Examples/ROOT.ML	\
  NSA/Examples/NSPrimes.thy
	@cd NSA; $(ISABELLE_TOOL) usedir $(OUT)/HOL-NSA Examples


## clean

clean:
	@rm -f $(OUT)/HOL-Plain $(OUT)/HOL-Main $(OUT)/HOL		\
		$(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-Lattice $(LOG)/HOL-Matrix			\
		$(LOG)/HOL-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 $(OUT)/HOL-Word $(LOG)/HOL-Word.gz	\
		$(LOG)/HOL-Word-Examples.gz $(OUT)/HOL-NSA		\
		$(LOG)/HOL-NSA.gz $(LOG)/HOL-NSA-Examples.gz