migrated theory headers to new format
authorhaftmann
Fri, 17 Jun 2005 16:12:49 +0200
changeset 164179bc16273c2d4
parent 16416 6061ae1f90f2
child 16418 5d0d24bd2c96
migrated theory headers to new format
Admin/Benchmarks/HOL-datatype/Brackin.thy
Admin/Benchmarks/HOL-datatype/Instructions.thy
Admin/Benchmarks/HOL-datatype/SML.thy
Admin/Benchmarks/HOL-datatype/Verilog.thy
Admin/isa-migrate
doc-src/AxClass/Group/Group.thy
doc-src/AxClass/Group/Product.thy
doc-src/AxClass/Group/Semigroups.thy
doc-src/AxClass/Nat/NatClass.thy
doc-src/IsarOverview/Isar/Calc.thy
doc-src/Locales/Locales/Locales.thy
doc-src/TutorialI/Advanced/simp.thy
doc-src/TutorialI/CodeGen/CodeGen.thy
doc-src/TutorialI/Datatype/ABexpr.thy
doc-src/TutorialI/Datatype/Fundata.thy
doc-src/TutorialI/Datatype/Nested.thy
doc-src/TutorialI/Datatype/unfoldnested.thy
doc-src/TutorialI/Documents/Documents.thy
doc-src/TutorialI/Ifexpr/Ifexpr.thy
doc-src/TutorialI/Inductive/Advanced.thy
doc-src/TutorialI/Inductive/Even.thy
doc-src/TutorialI/Misc/AdvancedInd.thy
doc-src/TutorialI/Misc/Itrev.thy
doc-src/TutorialI/Misc/Option2.thy
doc-src/TutorialI/Misc/Plus.thy
doc-src/TutorialI/Misc/Tree.thy
doc-src/TutorialI/Misc/Tree2.thy
doc-src/TutorialI/Misc/appendix.thy
doc-src/TutorialI/Misc/case_exprs.thy
doc-src/TutorialI/Misc/fakenat.thy
doc-src/TutorialI/Misc/natsum.thy
doc-src/TutorialI/Misc/pairs.thy
doc-src/TutorialI/Misc/prime_def.thy
doc-src/TutorialI/Misc/simp.thy
doc-src/TutorialI/Overview/Isar.thy
doc-src/TutorialI/Overview/LNCS/FP0.thy
doc-src/TutorialI/Overview/LNCS/Ordinal.thy
doc-src/TutorialI/Overview/LNCS/RECDEF.thy
doc-src/TutorialI/Protocol/Event.thy
doc-src/TutorialI/Protocol/Message.thy
doc-src/TutorialI/Protocol/NS_Public.thy
doc-src/TutorialI/Protocol/Public.thy
doc-src/TutorialI/Recdef/Induction.thy
doc-src/TutorialI/Recdef/Nested0.thy
doc-src/TutorialI/Recdef/Nested1.thy
doc-src/TutorialI/Recdef/Nested2.thy
doc-src/TutorialI/Recdef/examples.thy
doc-src/TutorialI/Recdef/simplification.thy
doc-src/TutorialI/Recdef/termination.thy
doc-src/TutorialI/Rules/Basic.thy
doc-src/TutorialI/Rules/Blast.thy
doc-src/TutorialI/Rules/Force.thy
doc-src/TutorialI/Rules/Forward.thy
doc-src/TutorialI/Rules/Primes.thy
doc-src/TutorialI/Rules/Tacticals.thy
doc-src/TutorialI/Sets/Examples.thy
doc-src/TutorialI/Sets/Functions.thy
doc-src/TutorialI/Sets/Recur.thy
doc-src/TutorialI/Sets/Relations.thy
doc-src/TutorialI/Trie/Trie.thy
doc-src/TutorialI/Types/Numbers.thy
doc-src/TutorialI/Types/Records.thy
doc-src/ZF/FOL_examples.thy
doc-src/ZF/IFOL_examples.thy
doc-src/ZF/If.thy
doc-src/ZF/ZF_examples.thy
src/CTT/Main.thy
src/FOL/FOL.thy
src/FOL/IFOL.thy
src/FOL/ex/Classical.thy
src/FOL/ex/First_Order_Logic.thy
src/FOL/ex/If.thy
src/FOL/ex/IffOracle.thy
src/FOL/ex/Intuitionistic.thy
src/FOL/ex/Natural_Numbers.thy
src/FOL/ex/int.thy
src/HOL/Algebra/Bij.thy
src/HOL/Algebra/CRing.thy
src/HOL/Algebra/Coset.thy
src/HOL/Algebra/Exponent.thy
src/HOL/Algebra/FiniteProduct.thy
src/HOL/Algebra/Group.thy
src/HOL/Algebra/Lattice.thy
src/HOL/Algebra/Module.thy
src/HOL/Algebra/Sylow.thy
src/HOL/Algebra/UnivPoly.thy
src/HOL/Algebra/abstract/Abstract.thy
src/HOL/Algebra/abstract/Ring.thy
src/HOL/Algebra/poly/LongDiv.thy
src/HOL/Auth/CertifiedEmail.thy
src/HOL/Auth/Event.thy
src/HOL/Auth/Guard/Analz.thy
src/HOL/Auth/Guard/Extensions.thy
src/HOL/Auth/Guard/Guard.thy
src/HOL/Auth/Guard/GuardK.thy
src/HOL/Auth/Guard/Guard_Public.thy
src/HOL/Auth/Guard/Guard_Shared.thy
src/HOL/Auth/Guard/List_Msg.thy
src/HOL/Auth/Guard/NS_Public.thy
src/HOL/Auth/Guard/OtwayRees.thy
src/HOL/Auth/Guard/P1.thy
src/HOL/Auth/Guard/P2.thy
src/HOL/Auth/Guard/Proto.thy
src/HOL/Auth/Guard/Yahalom.thy
src/HOL/Auth/KerberosIV.thy
src/HOL/Auth/Kerberos_BAN.thy
src/HOL/Auth/Message.thy
src/HOL/Auth/NS_Public.thy
src/HOL/Auth/NS_Public_Bad.thy
src/HOL/Auth/NS_Shared.thy
src/HOL/Auth/OtwayRees.thy
src/HOL/Auth/OtwayRees_AN.thy
src/HOL/Auth/OtwayRees_Bad.thy
src/HOL/Auth/Public.thy
src/HOL/Auth/Recur.thy
src/HOL/Auth/Shared.thy
src/HOL/Auth/TLS.thy
src/HOL/Auth/WooLam.thy
src/HOL/Auth/Yahalom.thy
src/HOL/Auth/Yahalom2.thy
src/HOL/Auth/Yahalom_Bad.thy
src/HOL/Auth/ZhouGollmann.thy
src/HOL/AxClasses/Group.thy
src/HOL/AxClasses/Product.thy
src/HOL/AxClasses/Semigroups.thy
src/HOL/Bali/AxCompl.thy
src/HOL/Bali/AxExample.thy
src/HOL/Bali/AxSem.thy
src/HOL/Bali/AxSound.thy
src/HOL/Bali/Basis.thy
src/HOL/Bali/Conform.thy
src/HOL/Bali/Decl.thy
src/HOL/Bali/DeclConcepts.thy
src/HOL/Bali/DefiniteAssignment.thy
src/HOL/Bali/DefiniteAssignmentCorrect.thy
src/HOL/Bali/Eval.thy
src/HOL/Bali/Evaln.thy
src/HOL/Bali/Example.thy
src/HOL/Bali/Name.thy
src/HOL/Bali/State.thy
src/HOL/Bali/Table.thy
src/HOL/Bali/Term.thy
src/HOL/Bali/Trans.thy
src/HOL/Bali/Type.thy
src/HOL/Bali/TypeRel.thy
src/HOL/Bali/TypeSafe.thy
src/HOL/Bali/Value.thy
src/HOL/Bali/WellForm.thy
src/HOL/Bali/WellType.thy
src/HOL/Extraction.thy
src/HOL/Extraction/Higman.thy
src/HOL/Extraction/QuotRem.thy
src/HOL/Extraction/Warshall.thy
src/HOL/HOL.thy
src/HOL/Hilbert_Choice.thy
src/HOL/Hoare/Examples.thy
src/HOL/Hoare/ExamplesAbort.thy
src/HOL/Hoare/Heap.thy
src/HOL/Hoare/HeapSyntax.thy
src/HOL/Hoare/HeapSyntaxAbort.thy
src/HOL/Hoare/Hoare.thy
src/HOL/Hoare/HoareAbort.thy
src/HOL/Hoare/Pointer_Examples.thy
src/HOL/Hoare/Pointer_ExamplesAbort.thy
src/HOL/Hoare/Pointers0.thy
src/HOL/Hoare/SchorrWaite.thy
src/HOL/Hoare/SepLogHeap.thy
src/HOL/Hoare/Separation.thy
src/HOL/HoareParallel/Gar_Coll.thy
src/HOL/HoareParallel/Graph.thy
src/HOL/HoareParallel/Mul_Gar_Coll.thy
src/HOL/HoareParallel/OG_Com.thy
src/HOL/HoareParallel/OG_Examples.thy
src/HOL/HoareParallel/OG_Hoare.thy
src/HOL/HoareParallel/OG_Tran.thy
src/HOL/HoareParallel/Quote_Antiquote.thy
src/HOL/HoareParallel/RG_Com.thy
src/HOL/HoareParallel/RG_Examples.thy
src/HOL/HoareParallel/RG_Hoare.thy
src/HOL/Hyperreal/HyperArith.thy
src/HOL/Hyperreal/HyperDef.thy
src/HOL/IMP/Com.thy
src/HOL/IMP/Compiler.thy
src/HOL/IMP/Compiler0.thy
src/HOL/IMP/Denotation.thy
src/HOL/IMP/Examples.thy
src/HOL/IMP/Expr.thy
src/HOL/IMP/Hoare.thy
src/HOL/IMP/Machines.thy
src/HOL/IMP/Natural.thy
src/HOL/IMP/Transition.thy
src/HOL/IMP/VC.thy
src/HOL/Import/Generate-HOL/GenHOL4Base.thy
src/HOL/Import/Generate-HOL/GenHOL4Prob.thy
src/HOL/Import/Generate-HOL/GenHOL4Real.thy
src/HOL/Import/Generate-HOL/GenHOL4Vec.thy
src/HOL/Import/Generate-HOL/GenHOL4Word32.thy
src/HOL/Import/HOL/HOL4.thy
src/HOL/Import/HOL/HOL4Base.thy
src/HOL/Import/HOL/HOL4Prob.thy
src/HOL/Import/HOL/HOL4Real.thy
src/HOL/Import/HOL/HOL4Vec.thy
src/HOL/Import/HOL/HOL4Word32.thy
src/HOL/Import/HOL4Compat.thy
src/HOL/Import/HOL4Setup.thy
src/HOL/Import/HOL4Syntax.thy
src/HOL/Import/MakeEqual.thy
src/HOL/Induct/ABexp.thy
src/HOL/Induct/Com.thy
src/HOL/Induct/Comb.thy
src/HOL/Induct/LFilter.thy
src/HOL/Induct/LList.thy
src/HOL/Induct/Mutil.thy
src/HOL/Induct/Ordinals.thy
src/HOL/Induct/PropLog.thy
src/HOL/Induct/QuoDataType.thy
src/HOL/Induct/QuoNestedDataType.thy
src/HOL/Induct/SList.thy
src/HOL/Induct/Sexp.thy
src/HOL/Induct/Sigma_Algebra.thy
src/HOL/Induct/Term.thy
src/HOL/Induct/Tree.thy
src/HOL/Inductive.thy
src/HOL/Integ/IntArith.thy
src/HOL/Integ/IntDiv.thy
src/HOL/Integ/NatSimprocs.thy
src/HOL/Integ/Numeral.thy
src/HOL/Integ/Presburger.thy
src/HOL/Isar_examples/BasicLogic.thy
src/HOL/Isar_examples/Cantor.thy
src/HOL/Isar_examples/Drinker.thy
src/HOL/Isar_examples/ExprCompiler.thy
src/HOL/Isar_examples/Fibonacci.thy
src/HOL/Isar_examples/Group.thy
src/HOL/Isar_examples/Hoare.thy
src/HOL/Isar_examples/HoareEx.thy
src/HOL/Isar_examples/KnasterTarski.thy
src/HOL/Isar_examples/MutilatedCheckerboard.thy
src/HOL/Isar_examples/NestedDatatype.thy
src/HOL/Isar_examples/Peirce.thy
src/HOL/Isar_examples/Puzzle.thy
src/HOL/Lambda/Commutation.thy
src/HOL/Lambda/Eta.thy
src/HOL/Lambda/InductTermi.thy
src/HOL/Lambda/Lambda.thy
src/HOL/Lambda/ListApplication.thy
src/HOL/Lambda/ListBeta.thy
src/HOL/Lambda/ListOrder.thy
src/HOL/Lambda/ParRed.thy
src/HOL/Lambda/StrongNorm.thy
src/HOL/Lambda/Type.thy
src/HOL/Lambda/WeakNorm.thy
src/HOL/Lattice/Bounds.thy
src/HOL/Lattice/CompleteLattice.thy
src/HOL/Lattice/Lattice.thy
src/HOL/Lattice/Orders.thy
src/HOL/Library/Word.thy
src/HOL/Matrix/MatrixGeneral.thy
src/HOL/Matrix/SparseMatrix.thy
src/HOL/MicroJava/BV/Altern.thy
src/HOL/MicroJava/BV/BVExample.thy
src/HOL/MicroJava/BV/BVNoTypeError.thy
src/HOL/MicroJava/BV/BVSpec.thy
src/HOL/MicroJava/BV/BVSpecTypeSafe.thy
src/HOL/MicroJava/BV/Correct.thy
src/HOL/MicroJava/BV/EffectMono.thy
src/HOL/MicroJava/BV/Err.thy
src/HOL/MicroJava/BV/JType.thy
src/HOL/MicroJava/BV/JVM.thy
src/HOL/MicroJava/BV/JVMType.thy
src/HOL/MicroJava/BV/Kildall.thy
src/HOL/MicroJava/BV/LBVComplete.thy
src/HOL/MicroJava/BV/LBVCorrect.thy
src/HOL/MicroJava/BV/LBVJVM.thy
src/HOL/MicroJava/BV/LBVSpec.thy
src/HOL/MicroJava/BV/Listn.thy
src/HOL/MicroJava/BV/Opt.thy
src/HOL/MicroJava/BV/Product.thy
src/HOL/MicroJava/BV/Semilat.thy
src/HOL/MicroJava/BV/SemilatAlg.thy
src/HOL/MicroJava/BV/Typing_Framework.thy
src/HOL/MicroJava/BV/Typing_Framework_JVM.thy
src/HOL/MicroJava/BV/Typing_Framework_err.thy
src/HOL/MicroJava/Comp/Index.thy
src/HOL/MicroJava/Comp/LemmasComp.thy
src/HOL/MicroJava/Comp/NatCanonify.thy
src/HOL/MicroJava/Comp/TranslComp.thy
src/HOL/MicroJava/Comp/TypeInf.thy
src/HOL/MicroJava/J/Conform.thy
src/HOL/MicroJava/J/Decl.thy
src/HOL/MicroJava/J/Eval.thy
src/HOL/MicroJava/J/Example.thy
src/HOL/MicroJava/J/Exceptions.thy
src/HOL/MicroJava/J/JBasis.thy
src/HOL/MicroJava/J/JListExample.thy
src/HOL/MicroJava/J/JTypeSafe.thy
src/HOL/MicroJava/J/State.thy
src/HOL/MicroJava/J/SystemClasses.thy
src/HOL/MicroJava/J/Term.thy
src/HOL/MicroJava/J/Type.thy
src/HOL/MicroJava/J/TypeRel.thy
src/HOL/MicroJava/J/Value.thy
src/HOL/MicroJava/J/WellForm.thy
src/HOL/MicroJava/J/WellType.thy
src/HOL/MicroJava/JVM/JVMDefensive.thy
src/HOL/MicroJava/JVM/JVMExceptions.thy
src/HOL/MicroJava/JVM/JVMExec.thy
src/HOL/MicroJava/JVM/JVMExecInstr.thy
src/HOL/MicroJava/JVM/JVMInstructions.thy
src/HOL/MicroJava/JVM/JVMListExample.thy
src/HOL/NanoJava/AxSem.thy
src/HOL/NanoJava/Decl.thy
src/HOL/NanoJava/Equivalence.thy
src/HOL/NanoJava/Example.thy
src/HOL/NanoJava/OpSem.thy
src/HOL/NanoJava/State.thy
src/HOL/NanoJava/Term.thy
src/HOL/NanoJava/TypeRel.thy
src/HOL/NatArith.thy
src/HOL/NumberTheory/BijectionRel.thy
src/HOL/NumberTheory/Chinese.thy
src/HOL/NumberTheory/Euler.thy
src/HOL/NumberTheory/EulerFermat.thy
src/HOL/NumberTheory/EvenOdd.thy
src/HOL/NumberTheory/Factorization.thy
src/HOL/NumberTheory/Fib.thy
src/HOL/NumberTheory/Gauss.thy
src/HOL/NumberTheory/Int2.thy
src/HOL/NumberTheory/IntFact.thy
src/HOL/NumberTheory/IntPrimes.thy
src/HOL/NumberTheory/Residues.thy
src/HOL/NumberTheory/WilsonBij.thy
src/HOL/NumberTheory/WilsonRuss.thy
src/HOL/OrderedGroup.thy
src/HOL/Orderings.thy
src/HOL/Presburger.thy
src/HOL/Product_Type.thy
src/HOL/Real/HahnBanach/Bounds.thy
src/HOL/Real/HahnBanach/FunctionNorm.thy
src/HOL/Real/HahnBanach/FunctionOrder.thy
src/HOL/Real/HahnBanach/HahnBanach.thy
src/HOL/Real/HahnBanach/HahnBanachExtLemmas.thy
src/HOL/Real/HahnBanach/HahnBanachLemmas.thy
src/HOL/Real/HahnBanach/HahnBanachSupLemmas.thy
src/HOL/Real/HahnBanach/Linearform.thy
src/HOL/Real/HahnBanach/NormedSpace.thy
src/HOL/Real/HahnBanach/Subspace.thy
src/HOL/Real/HahnBanach/VectorSpace.thy
src/HOL/Real/HahnBanach/ZornLemma.thy
src/HOL/Real/Rational.thy
src/HOL/Real/RealDef.thy
src/HOL/Recdef.thy
src/HOL/Reconstruction.thy
src/HOL/Record.thy
src/HOL/Refute.thy
src/HOL/SET-Protocol/Cardholder_Registration.thy
src/HOL/SET-Protocol/EventSET.thy
src/HOL/SET-Protocol/Merchant_Registration.thy
src/HOL/SET-Protocol/MessageSET.thy
src/HOL/SET-Protocol/PublicSET.thy
src/HOL/SET-Protocol/Purchase.thy
src/HOL/TLA/Memory/RPCMemoryParams.thy
src/HOL/Transitive_Closure.thy
src/HOL/Typedef.thy
src/HOL/UNITY/Comp.thy
src/HOL/UNITY/Comp/AllocBase.thy
src/HOL/UNITY/Comp/AllocImpl.thy
src/HOL/UNITY/Comp/Client.thy
src/HOL/UNITY/Comp/Counter.thy
src/HOL/UNITY/Comp/Counterc.thy
src/HOL/UNITY/Comp/Handshake.thy
src/HOL/UNITY/Comp/Priority.thy
src/HOL/UNITY/Comp/Progress.thy
src/HOL/UNITY/Comp/TimerArray.thy
src/HOL/UNITY/Constrains.thy
src/HOL/UNITY/Detects.thy
src/HOL/UNITY/ELT.thy
src/HOL/UNITY/Extend.thy
src/HOL/UNITY/FP.thy
src/HOL/UNITY/Follows.thy
src/HOL/UNITY/Guar.thy
src/HOL/UNITY/Lift_prog.thy
src/HOL/UNITY/ListOrder.thy
src/HOL/UNITY/PPROD.thy
src/HOL/UNITY/ProgressSets.thy
src/HOL/UNITY/Project.thy
src/HOL/UNITY/Rename.thy
src/HOL/UNITY/Simple/Channel.thy
src/HOL/UNITY/Simple/Common.thy
src/HOL/UNITY/Simple/Deadlock.thy
src/HOL/UNITY/Simple/Mutex.thy
src/HOL/UNITY/Simple/NSP_Bad.thy
src/HOL/UNITY/Simple/Network.thy
src/HOL/UNITY/Simple/Reach.thy
src/HOL/UNITY/Simple/Reachability.thy
src/HOL/UNITY/SubstAx.thy
src/HOL/UNITY/Transformers.thy
src/HOL/UNITY/UNITY.thy
src/HOL/UNITY/UNITY_Main.thy
src/HOL/UNITY/Union.thy
src/HOL/UNITY/WFair.thy
src/HOL/Unix/Unix.thy
src/HOL/ex/Adder.thy
src/HOL/ex/Antiquote.thy
src/HOL/ex/BT.thy
src/HOL/ex/BinEx.thy
src/HOL/ex/CTL.thy
src/HOL/ex/Classical.thy
src/HOL/ex/Higher_Order_Logic.thy
src/HOL/ex/Hilbert_Classical.thy
src/HOL/ex/InductiveInvariant.thy
src/HOL/ex/InductiveInvariant_examples.thy
src/HOL/ex/Intuitionistic.thy
src/HOL/ex/Lagrange.thy
src/HOL/ex/Locales.thy
src/HOL/ex/MonoidGroup.thy
src/HOL/ex/Multiquote.thy
src/HOL/ex/NatSum.thy
src/HOL/ex/PER.thy
src/HOL/ex/PresburgerEx.thy
src/HOL/ex/Primrec.thy
src/HOL/ex/Puzzle.thy
src/HOL/ex/Quickcheck_Examples.thy
src/HOL/ex/Recdefs.thy
src/HOL/ex/Records.thy
src/HOL/ex/SVC_Oracle.thy
src/HOL/ex/StringEx.thy
src/HOL/ex/Tarski.thy
src/HOL/ex/Tuple.thy
src/HOL/ex/mesontest2.thy
src/HOL/ex/set.thy
src/HOLCF/Cfun.thy
src/HOLCF/FOCUS/Fstreams.thy
src/HOLCF/Fixrec.thy
src/HOLCF/IMP/Denotational.thy
src/HOLCF/IMP/HoareEx.thy
src/HOLCF/ex/Dnat.thy
src/HOLCF/ex/Stream.thy
src/ZF/AC.thy
src/ZF/AC/AC15_WO6.thy
src/ZF/AC/AC16_WO4.thy
src/ZF/AC/AC16_lemmas.thy
src/ZF/AC/AC17_AC1.thy
src/ZF/AC/AC18_AC19.thy
src/ZF/AC/AC7_AC9.thy
src/ZF/AC/AC_Equiv.thy
src/ZF/AC/Cardinal_aux.thy
src/ZF/AC/DC.thy
src/ZF/AC/HH.thy
src/ZF/AC/Hartog.thy
src/ZF/AC/WO1_AC.thy
src/ZF/AC/WO1_WO7.thy
src/ZF/AC/WO2_AC16.thy
src/ZF/AC/WO6_WO1.thy
src/ZF/Arith.thy
src/ZF/ArithSimp.thy
src/ZF/Bool.thy
src/ZF/Cardinal.thy
src/ZF/CardinalArith.thy
src/ZF/Cardinal_AC.thy
src/ZF/Coind/Dynamic.thy
src/ZF/Coind/ECR.thy
src/ZF/Coind/Language.thy
src/ZF/Coind/Map.thy
src/ZF/Coind/Static.thy
src/ZF/Coind/Types.thy
src/ZF/Coind/Values.thy
src/ZF/Constructible/AC_in_L.thy
src/ZF/Constructible/DPow_absolute.thy
src/ZF/Constructible/Datatype_absolute.thy
src/ZF/Constructible/Formula.thy
src/ZF/Constructible/Internalize.thy
src/ZF/Constructible/L_axioms.thy
src/ZF/Constructible/MetaExists.thy
src/ZF/Constructible/Normal.thy
src/ZF/Constructible/Rank.thy
src/ZF/Constructible/Rank_Separation.thy
src/ZF/Constructible/Rec_Separation.thy
src/ZF/Constructible/Reflection.thy
src/ZF/Constructible/Relative.thy
src/ZF/Constructible/Satisfies_absolute.thy
src/ZF/Constructible/Separation.thy
src/ZF/Constructible/WF_absolute.thy
src/ZF/Constructible/WFrec.thy
src/ZF/Constructible/Wellorderings.thy
src/ZF/Datatype.thy
src/ZF/Epsilon.thy
src/ZF/Finite.thy
src/ZF/Fixedpt.thy
src/ZF/IMP/Com.thy
src/ZF/IMP/Denotation.thy
src/ZF/IMP/Equiv.thy
src/ZF/Induct/Acc.thy
src/ZF/Induct/Binary_Trees.thy
src/ZF/Induct/Brouwer.thy
src/ZF/Induct/Comb.thy
src/ZF/Induct/Datatypes.thy
src/ZF/Induct/FoldSet.thy
src/ZF/Induct/ListN.thy
src/ZF/Induct/Mutil.thy
src/ZF/Induct/Ntree.thy
src/ZF/Induct/Primrec.thy
src/ZF/Induct/PropLog.thy
src/ZF/Induct/Rmap.thy
src/ZF/Induct/Term.thy
src/ZF/Induct/Tree_Forest.thy
src/ZF/Inductive.thy
src/ZF/InfDatatype.thy
src/ZF/Integ/Bin.thy
src/ZF/Integ/EquivClass.thy
src/ZF/Integ/Int.thy
src/ZF/Integ/IntArith.thy
src/ZF/Integ/IntDiv.thy
src/ZF/List.thy
src/ZF/Main.thy
src/ZF/Main_ZFC.thy
src/ZF/Nat.thy
src/ZF/OrdQuant.thy
src/ZF/Order.thy
src/ZF/OrderArith.thy
src/ZF/OrderType.thy
src/ZF/Ordinal.thy
src/ZF/Perm.thy
src/ZF/QPair.thy
src/ZF/QUniv.thy
src/ZF/Resid/Confluence.thy
src/ZF/Resid/Redex.thy
src/ZF/Resid/Reduction.thy
src/ZF/Resid/Residuals.thy
src/ZF/Resid/Substitution.thy
src/ZF/Sum.thy
src/ZF/Trancl.thy
src/ZF/UNITY/AllocBase.thy
src/ZF/UNITY/AllocImpl.thy
src/ZF/UNITY/ClientImpl.thy
src/ZF/UNITY/Comp.thy
src/ZF/UNITY/Distributor.thy
src/ZF/UNITY/FP.thy
src/ZF/UNITY/Follows.thy
src/ZF/UNITY/Guar.thy
src/ZF/UNITY/Increasing.thy
src/ZF/UNITY/Merge.thy
src/ZF/UNITY/Monotonicity.thy
src/ZF/UNITY/State.thy
src/ZF/UNITY/UNITY.thy
src/ZF/UNITY/Union.thy
src/ZF/Univ.thy
src/ZF/WF.thy
src/ZF/ZF.thy
src/ZF/Zorn.thy
src/ZF/equalities.thy
src/ZF/ex/BinEx.thy
src/ZF/ex/CoUnit.thy
src/ZF/ex/Commutation.thy
src/ZF/ex/Group.thy
src/ZF/ex/LList.thy
src/ZF/ex/Limit.thy
src/ZF/ex/NatSum.thy
src/ZF/ex/Primes.thy
src/ZF/ex/Ramsey.thy
src/ZF/ex/Ring.thy
src/ZF/ex/misc.thy
src/ZF/func.thy
src/ZF/pair.thy
src/ZF/upair.thy
     1.1 --- a/Admin/Benchmarks/HOL-datatype/Brackin.thy	Fri Jun 17 11:35:35 2005 +0200
     1.2 +++ b/Admin/Benchmarks/HOL-datatype/Brackin.thy	Fri Jun 17 16:12:49 2005 +0200
     1.3 @@ -2,7 +2,7 @@
     1.4      ID:         $Id$
     1.5  *)
     1.6  
     1.7 -theory Brackin = Main:
     1.8 +theory Brackin imports Main begin
     1.9  
    1.10  (* ------------------------------------------------------------------------- *)
    1.11  (* A couple from Steve Brackin's work.                                       *)
     2.1 --- a/Admin/Benchmarks/HOL-datatype/Instructions.thy	Fri Jun 17 11:35:35 2005 +0200
     2.2 +++ b/Admin/Benchmarks/HOL-datatype/Instructions.thy	Fri Jun 17 16:12:49 2005 +0200
     2.3 @@ -2,7 +2,7 @@
     2.4      ID:         $Id$
     2.5  *)
     2.6  
     2.7 -theory Instructions = Main:
     2.8 +theory Instructions imports Main begin
     2.9  
    2.10  (* ------------------------------------------------------------------------- *)
    2.11  (* Example from Konrad: 68000 instruction set.                               *)
     3.1 --- a/Admin/Benchmarks/HOL-datatype/SML.thy	Fri Jun 17 11:35:35 2005 +0200
     3.2 +++ b/Admin/Benchmarks/HOL-datatype/SML.thy	Fri Jun 17 16:12:49 2005 +0200
     3.3 @@ -2,7 +2,7 @@
     3.4      ID:         $Id$
     3.5  *)
     3.6  
     3.7 -theory SML = Main:
     3.8 +theory SML imports Main begin
     3.9  
    3.10  (* ------------------------------------------------------------------------- *)
    3.11  (* Example from Myra: part of the syntax of SML.                             *)
     4.1 --- a/Admin/Benchmarks/HOL-datatype/Verilog.thy	Fri Jun 17 11:35:35 2005 +0200
     4.2 +++ b/Admin/Benchmarks/HOL-datatype/Verilog.thy	Fri Jun 17 16:12:49 2005 +0200
     4.3 @@ -2,7 +2,7 @@
     4.4      ID:         $Id$
     4.5  *)
     4.6  
     4.7 -theory Verilog = Main:
     4.8 +theory Verilog imports Main begin
     4.9  
    4.10  (* ------------------------------------------------------------------------- *)
    4.11  (* Example from Daryl: a Verilog grammar.                                    *)
     5.1 --- a/Admin/isa-migrate	Fri Jun 17 11:35:35 2005 +0200
     5.2 +++ b/Admin/isa-migrate	Fri Jun 17 16:12:49 2005 +0200
     5.3 @@ -23,8 +23,8 @@
     5.4      },
     5.5      thyheader => sub {
     5.6          my ($file, @content) = @_;
     5.7 -        my $diag = 1;
     5.8 -        #~ my $diag = 0;
     5.9 +        #~ my $diag = 1;
    5.10 +        my $diag = 0;
    5.11          $_ = join("", @content);
    5.12          if (m!^theory!cgoms) {
    5.13              my $prelude = $`;
     6.1 --- a/doc-src/AxClass/Group/Group.thy	Fri Jun 17 11:35:35 2005 +0200
     6.2 +++ b/doc-src/AxClass/Group/Group.thy	Fri Jun 17 16:12:49 2005 +0200
     6.3 @@ -1,7 +1,7 @@
     6.4  
     6.5  header {* Basic group theory *}
     6.6  
     6.7 -theory Group = Main:
     6.8 +theory Group imports Main begin
     6.9  
    6.10  text {*
    6.11    \medskip\noindent The meta-level type system of Isabelle supports
     7.1 --- a/doc-src/AxClass/Group/Product.thy	Fri Jun 17 11:35:35 2005 +0200
     7.2 +++ b/doc-src/AxClass/Group/Product.thy	Fri Jun 17 16:12:49 2005 +0200
     7.3 @@ -1,7 +1,7 @@
     7.4  
     7.5  header {* Syntactic classes *}
     7.6  
     7.7 -theory Product = Main:
     7.8 +theory Product imports Main begin
     7.9  
    7.10  text {*
    7.11    \medskip\noindent There is still a feature of Isabelle's type system
     8.1 --- a/doc-src/AxClass/Group/Semigroups.thy	Fri Jun 17 11:35:35 2005 +0200
     8.2 +++ b/doc-src/AxClass/Group/Semigroups.thy	Fri Jun 17 16:12:49 2005 +0200
     8.3 @@ -1,7 +1,7 @@
     8.4  
     8.5  header {* Semigroups *}
     8.6  
     8.7 -theory Semigroups = Main:
     8.8 +theory Semigroups imports Main begin
     8.9  
    8.10  text {*
    8.11    \medskip\noindent An axiomatic type class is simply a class of types
     9.1 --- a/doc-src/AxClass/Nat/NatClass.thy	Fri Jun 17 11:35:35 2005 +0200
     9.2 +++ b/doc-src/AxClass/Nat/NatClass.thy	Fri Jun 17 16:12:49 2005 +0200
     9.3 @@ -1,7 +1,7 @@
     9.4  
     9.5  header {* Defining natural numbers in FOL \label{sec:ex-natclass} *}
     9.6  
     9.7 -theory NatClass = FOL:
     9.8 +theory NatClass imports FOL begin
     9.9  
    9.10  text {*
    9.11   \medskip\noindent Axiomatic type classes abstract over exactly one
    10.1 --- a/doc-src/IsarOverview/Isar/Calc.thy	Fri Jun 17 11:35:35 2005 +0200
    10.2 +++ b/doc-src/IsarOverview/Isar/Calc.thy	Fri Jun 17 16:12:49 2005 +0200
    10.3 @@ -1,4 +1,4 @@
    10.4 -theory Calc = Main:
    10.5 +theory Calc imports Main begin
    10.6  
    10.7  subsection{* Chains of equalities *}
    10.8  
    11.1 --- a/doc-src/Locales/Locales/Locales.thy	Fri Jun 17 11:35:35 2005 +0200
    11.2 +++ b/doc-src/Locales/Locales/Locales.thy	Fri Jun 17 16:12:49 2005 +0200
    11.3 @@ -6,7 +6,7 @@
    11.4  *)
    11.5  
    11.6  (*<*)
    11.7 -theory Locales = Main:
    11.8 +theory Locales imports Main begin
    11.9  
   11.10  ML_setup {* print_mode := "type_brackets" :: !print_mode; *}
   11.11  (*>*)
    12.1 --- a/doc-src/TutorialI/Advanced/simp.thy	Fri Jun 17 11:35:35 2005 +0200
    12.2 +++ b/doc-src/TutorialI/Advanced/simp.thy	Fri Jun 17 16:12:49 2005 +0200
    12.3 @@ -1,5 +1,5 @@
    12.4  (*<*)
    12.5 -theory simp = Main:
    12.6 +theory simp imports Main begin
    12.7  (*>*)
    12.8  
    12.9  section{*Simplification*}
    13.1 --- a/doc-src/TutorialI/CodeGen/CodeGen.thy	Fri Jun 17 11:35:35 2005 +0200
    13.2 +++ b/doc-src/TutorialI/CodeGen/CodeGen.thy	Fri Jun 17 16:12:49 2005 +0200
    13.3 @@ -1,5 +1,5 @@
    13.4  (*<*)
    13.5 -theory CodeGen = Main:
    13.6 +theory CodeGen imports Main begin
    13.7  (*>*)
    13.8  
    13.9  section{*Case Study: Compiling Expressions*}
    14.1 --- a/doc-src/TutorialI/Datatype/ABexpr.thy	Fri Jun 17 11:35:35 2005 +0200
    14.2 +++ b/doc-src/TutorialI/Datatype/ABexpr.thy	Fri Jun 17 16:12:49 2005 +0200
    14.3 @@ -1,5 +1,5 @@
    14.4  (*<*)
    14.5 -theory ABexpr = Main:;
    14.6 +theory ABexpr imports Main begin;
    14.7  (*>*)
    14.8  
    14.9  text{*
    15.1 --- a/doc-src/TutorialI/Datatype/Fundata.thy	Fri Jun 17 11:35:35 2005 +0200
    15.2 +++ b/doc-src/TutorialI/Datatype/Fundata.thy	Fri Jun 17 16:12:49 2005 +0200
    15.3 @@ -1,5 +1,5 @@
    15.4  (*<*)
    15.5 -theory Fundata = Main:
    15.6 +theory Fundata imports Main begin
    15.7  (*>*)
    15.8  datatype ('a,'i)bigtree = Tip | Br 'a "'i \<Rightarrow> ('a,'i)bigtree"
    15.9  
    16.1 --- a/doc-src/TutorialI/Datatype/Nested.thy	Fri Jun 17 11:35:35 2005 +0200
    16.2 +++ b/doc-src/TutorialI/Datatype/Nested.thy	Fri Jun 17 16:12:49 2005 +0200
    16.3 @@ -1,5 +1,5 @@
    16.4  (*<*)
    16.5 -theory Nested = ABexpr:
    16.6 +theory Nested imports ABexpr begin
    16.7  (*>*)
    16.8  
    16.9  text{*
    17.1 --- a/doc-src/TutorialI/Datatype/unfoldnested.thy	Fri Jun 17 11:35:35 2005 +0200
    17.2 +++ b/doc-src/TutorialI/Datatype/unfoldnested.thy	Fri Jun 17 16:12:49 2005 +0200
    17.3 @@ -1,5 +1,5 @@
    17.4  (*<*)
    17.5 -theory unfoldnested = Main:;
    17.6 +theory unfoldnested imports Main begin;
    17.7  (*>*)
    17.8  datatype ('v,'f)"term" = Var 'v | App 'f "('v,'f)term_list"
    17.9  and ('v,'f)term_list = Nil | Cons "('v,'f)term" "('v,'f)term_list"
    18.1 --- a/doc-src/TutorialI/Documents/Documents.thy	Fri Jun 17 11:35:35 2005 +0200
    18.2 +++ b/doc-src/TutorialI/Documents/Documents.thy	Fri Jun 17 16:12:49 2005 +0200
    18.3 @@ -1,5 +1,5 @@
    18.4  (*<*)
    18.5 -theory Documents = Main:
    18.6 +theory Documents imports Main begin
    18.7  (*>*)
    18.8  
    18.9  section {* Concrete Syntax \label{sec:concrete-syntax} *}
    19.1 --- a/doc-src/TutorialI/Ifexpr/Ifexpr.thy	Fri Jun 17 11:35:35 2005 +0200
    19.2 +++ b/doc-src/TutorialI/Ifexpr/Ifexpr.thy	Fri Jun 17 16:12:49 2005 +0200
    19.3 @@ -1,5 +1,5 @@
    19.4  (*<*)
    19.5 -theory Ifexpr = Main:;
    19.6 +theory Ifexpr imports Main begin;
    19.7  (*>*)
    19.8  
    19.9  subsection{*Case Study: Boolean Expressions*}
    20.1 --- a/doc-src/TutorialI/Inductive/Advanced.thy	Fri Jun 17 11:35:35 2005 +0200
    20.2 +++ b/doc-src/TutorialI/Inductive/Advanced.thy	Fri Jun 17 16:12:49 2005 +0200
    20.3 @@ -1,5 +1,5 @@
    20.4  (* ID:         $Id$ *)
    20.5 -theory Advanced = Even:
    20.6 +theory Advanced imports Even begin
    20.7  
    20.8  
    20.9  datatype 'f gterm = Apply 'f "'f gterm list"
    21.1 --- a/doc-src/TutorialI/Inductive/Even.thy	Fri Jun 17 11:35:35 2005 +0200
    21.2 +++ b/doc-src/TutorialI/Inductive/Even.thy	Fri Jun 17 16:12:49 2005 +0200
    21.3 @@ -1,5 +1,5 @@
    21.4  (* ID:         $Id$ *)
    21.5 -theory Even = Main:
    21.6 +theory Even imports Main begin
    21.7  
    21.8  
    21.9  consts even :: "nat set"
    22.1 --- a/doc-src/TutorialI/Misc/AdvancedInd.thy	Fri Jun 17 11:35:35 2005 +0200
    22.2 +++ b/doc-src/TutorialI/Misc/AdvancedInd.thy	Fri Jun 17 16:12:49 2005 +0200
    22.3 @@ -1,5 +1,5 @@
    22.4  (*<*)
    22.5 -theory AdvancedInd = Main:;
    22.6 +theory AdvancedInd imports Main begin;
    22.7  (*>*)
    22.8  
    22.9  text{*\noindent
    23.1 --- a/doc-src/TutorialI/Misc/Itrev.thy	Fri Jun 17 11:35:35 2005 +0200
    23.2 +++ b/doc-src/TutorialI/Misc/Itrev.thy	Fri Jun 17 16:12:49 2005 +0200
    23.3 @@ -1,5 +1,5 @@
    23.4  (*<*)
    23.5 -theory Itrev = Main:;
    23.6 +theory Itrev imports Main begin;
    23.7  (*>*)
    23.8  
    23.9  section{*Induction Heuristics*}
    24.1 --- a/doc-src/TutorialI/Misc/Option2.thy	Fri Jun 17 11:35:35 2005 +0200
    24.2 +++ b/doc-src/TutorialI/Misc/Option2.thy	Fri Jun 17 16:12:49 2005 +0200
    24.3 @@ -1,5 +1,5 @@
    24.4  (*<*)
    24.5 -theory Option2 = Main:
    24.6 +theory Option2 imports Main begin
    24.7  hide const None Some
    24.8  hide type option
    24.9  (*>*)
    25.1 --- a/doc-src/TutorialI/Misc/Plus.thy	Fri Jun 17 11:35:35 2005 +0200
    25.2 +++ b/doc-src/TutorialI/Misc/Plus.thy	Fri Jun 17 16:12:49 2005 +0200
    25.3 @@ -1,5 +1,5 @@
    25.4  (*<*)
    25.5 -theory Plus = Main:
    25.6 +theory Plus imports Main begin
    25.7  (*>*)
    25.8  
    25.9  text{*\noindent Define the following addition function *}
    26.1 --- a/doc-src/TutorialI/Misc/Tree.thy	Fri Jun 17 11:35:35 2005 +0200
    26.2 +++ b/doc-src/TutorialI/Misc/Tree.thy	Fri Jun 17 16:12:49 2005 +0200
    26.3 @@ -1,5 +1,5 @@
    26.4  (*<*)
    26.5 -theory Tree = Main:
    26.6 +theory Tree imports Main begin
    26.7  (*>*)
    26.8  
    26.9  text{*\noindent
    27.1 --- a/doc-src/TutorialI/Misc/Tree2.thy	Fri Jun 17 11:35:35 2005 +0200
    27.2 +++ b/doc-src/TutorialI/Misc/Tree2.thy	Fri Jun 17 16:12:49 2005 +0200
    27.3 @@ -1,5 +1,5 @@
    27.4  (*<*)
    27.5 -theory Tree2 = Tree:
    27.6 +theory Tree2 imports Tree begin
    27.7  (*>*)
    27.8  
    27.9  text{*\noindent In Exercise~\ref{ex:Tree} we defined a function
    28.1 --- a/doc-src/TutorialI/Misc/appendix.thy	Fri Jun 17 11:35:35 2005 +0200
    28.2 +++ b/doc-src/TutorialI/Misc/appendix.thy	Fri Jun 17 16:12:49 2005 +0200
    28.3 @@ -1,5 +1,5 @@
    28.4  (*<*)
    28.5 -theory appendix = Main:;
    28.6 +theory appendix imports Main begin;
    28.7  (*>*)
    28.8  
    28.9  text{*
    29.1 --- a/doc-src/TutorialI/Misc/case_exprs.thy	Fri Jun 17 11:35:35 2005 +0200
    29.2 +++ b/doc-src/TutorialI/Misc/case_exprs.thy	Fri Jun 17 16:12:49 2005 +0200
    29.3 @@ -1,5 +1,5 @@
    29.4  (*<*)
    29.5 -theory case_exprs = Main:
    29.6 +theory case_exprs imports Main begin
    29.7  (*>*)
    29.8  
    29.9  subsection{*Case Expressions*}
    30.1 --- a/doc-src/TutorialI/Misc/fakenat.thy	Fri Jun 17 11:35:35 2005 +0200
    30.2 +++ b/doc-src/TutorialI/Misc/fakenat.thy	Fri Jun 17 16:12:49 2005 +0200
    30.3 @@ -1,5 +1,5 @@
    30.4  (*<*)
    30.5 -theory fakenat = Main:;
    30.6 +theory fakenat imports Main begin;
    30.7  (*>*)
    30.8  
    30.9  text{*\noindent
    31.1 --- a/doc-src/TutorialI/Misc/natsum.thy	Fri Jun 17 11:35:35 2005 +0200
    31.2 +++ b/doc-src/TutorialI/Misc/natsum.thy	Fri Jun 17 16:12:49 2005 +0200
    31.3 @@ -1,5 +1,5 @@
    31.4  (*<*)
    31.5 -theory natsum = Main:;
    31.6 +theory natsum imports Main begin;
    31.7  (*>*)
    31.8  text{*\noindent
    31.9  In particular, there are @{text"case"}-expressions, for example
    32.1 --- a/doc-src/TutorialI/Misc/pairs.thy	Fri Jun 17 11:35:35 2005 +0200
    32.2 +++ b/doc-src/TutorialI/Misc/pairs.thy	Fri Jun 17 16:12:49 2005 +0200
    32.3 @@ -1,5 +1,5 @@
    32.4  (*<*)
    32.5 -theory pairs = Main:;
    32.6 +theory pairs imports Main begin;
    32.7  (*>*)
    32.8  text{*\label{sec:pairs}\index{pairs and tuples}
    32.9  HOL also has ordered pairs: \isa{($a@1$,$a@2$)} is of type $\tau@1$
    33.1 --- a/doc-src/TutorialI/Misc/prime_def.thy	Fri Jun 17 11:35:35 2005 +0200
    33.2 +++ b/doc-src/TutorialI/Misc/prime_def.thy	Fri Jun 17 16:12:49 2005 +0200
    33.3 @@ -1,5 +1,5 @@
    33.4  (*<*)
    33.5 -theory prime_def = Main:;
    33.6 +theory prime_def imports Main begin;
    33.7  consts prime :: "nat \<Rightarrow> bool"
    33.8  (*>*)
    33.9  text{*
    34.1 --- a/doc-src/TutorialI/Misc/simp.thy	Fri Jun 17 11:35:35 2005 +0200
    34.2 +++ b/doc-src/TutorialI/Misc/simp.thy	Fri Jun 17 16:12:49 2005 +0200
    34.3 @@ -1,5 +1,5 @@
    34.4  (*<*)
    34.5 -theory simp = Main:
    34.6 +theory simp imports Main begin
    34.7  (*>*)
    34.8  
    34.9  subsection{*Simplification Rules*}
    35.1 --- a/doc-src/TutorialI/Overview/Isar.thy	Fri Jun 17 11:35:35 2005 +0200
    35.2 +++ b/doc-src/TutorialI/Overview/Isar.thy	Fri Jun 17 16:12:49 2005 +0200
    35.3 @@ -1,4 +1,4 @@
    35.4 -theory Isar = Sets:
    35.5 +theory Isar imports Sets begin
    35.6  
    35.7  section{*A Taste of Structured Proofs in Isar*}
    35.8  
    36.1 --- a/doc-src/TutorialI/Overview/LNCS/FP0.thy	Fri Jun 17 11:35:35 2005 +0200
    36.2 +++ b/doc-src/TutorialI/Overview/LNCS/FP0.thy	Fri Jun 17 16:12:49 2005 +0200
    36.3 @@ -1,4 +1,4 @@
    36.4 -theory FP0 = PreList:
    36.5 +theory FP0 imports PreList begin
    36.6  
    36.7  datatype 'a list = Nil                          ("[]")
    36.8                   | Cons 'a "'a list"            (infixr "#" 65)
    37.1 --- a/doc-src/TutorialI/Overview/LNCS/Ordinal.thy	Fri Jun 17 11:35:35 2005 +0200
    37.2 +++ b/doc-src/TutorialI/Overview/LNCS/Ordinal.thy	Fri Jun 17 16:12:49 2005 +0200
    37.3 @@ -1,4 +1,4 @@
    37.4 -theory Ordinal = Main:
    37.5 +theory Ordinal imports Main begin
    37.6  
    37.7  datatype ordinal = Zero | Succ ordinal | Limit "nat \<Rightarrow> ordinal"
    37.8  
    38.1 --- a/doc-src/TutorialI/Overview/LNCS/RECDEF.thy	Fri Jun 17 11:35:35 2005 +0200
    38.2 +++ b/doc-src/TutorialI/Overview/LNCS/RECDEF.thy	Fri Jun 17 16:12:49 2005 +0200
    38.3 @@ -1,5 +1,5 @@
    38.4  (*<*)
    38.5 -theory RECDEF = Main:
    38.6 +theory RECDEF imports Main begin
    38.7  (*>*)
    38.8  
    38.9  subsection{*Wellfounded Recursion*}
    39.1 --- a/doc-src/TutorialI/Protocol/Event.thy	Fri Jun 17 11:35:35 2005 +0200
    39.2 +++ b/doc-src/TutorialI/Protocol/Event.thy	Fri Jun 17 16:12:49 2005 +0200
    39.3 @@ -11,8 +11,8 @@
    39.4      stores are visible to him
    39.5  *)
    39.6  
    39.7 -theory Event = Message
    39.8 -files ("Event_lemmas.ML"):
    39.9 +theory Event imports Message
   39.10 +uses ("Event_lemmas.ML") begin
   39.11  
   39.12  consts  (*Initial states of agents -- parameter of the construction*)
   39.13    initState :: "agent => msg set"
    40.1 --- a/doc-src/TutorialI/Protocol/Message.thy	Fri Jun 17 11:35:35 2005 +0200
    40.2 +++ b/doc-src/TutorialI/Protocol/Message.thy	Fri Jun 17 16:12:49 2005 +0200
    40.3 @@ -7,8 +7,8 @@
    40.4  Inductive relations "parts", "analz" and "synth"
    40.5  *)
    40.6  
    40.7 -theory Message = Main
    40.8 -files ("Message_lemmas.ML"):
    40.9 +theory Message imports Main
   40.10 +uses ("Message_lemmas.ML") begin
   40.11  
   40.12  (*Needed occasionally with spy_analz_tac, e.g. in analz_insert_Key_newK*)
   40.13  lemma [simp] : "A Un (B Un A) = B Un A"
    41.1 --- a/doc-src/TutorialI/Protocol/NS_Public.thy	Fri Jun 17 11:35:35 2005 +0200
    41.2 +++ b/doc-src/TutorialI/Protocol/NS_Public.thy	Fri Jun 17 16:12:49 2005 +0200
    41.3 @@ -7,7 +7,7 @@
    41.4  Version incorporating Lowe's fix (inclusion of B's identity in round 2).
    41.5  *)
    41.6  
    41.7 -theory NS_Public = Public:
    41.8 +theory NS_Public imports Public begin
    41.9  
   41.10  consts  ns_public  :: "event list set"
   41.11  
    42.1 --- a/doc-src/TutorialI/Protocol/Public.thy	Fri Jun 17 11:35:35 2005 +0200
    42.2 +++ b/doc-src/TutorialI/Protocol/Public.thy	Fri Jun 17 16:12:49 2005 +0200
    42.3 @@ -8,8 +8,8 @@
    42.4  Private and public keys; initial states of agents
    42.5  *)
    42.6  
    42.7 -theory Public = Event
    42.8 -files ("Public_lemmas.ML"):
    42.9 +theory Public imports Event
   42.10 +uses ("Public_lemmas.ML") begin
   42.11  
   42.12  consts
   42.13    pubK    :: "agent => key"
    43.1 --- a/doc-src/TutorialI/Recdef/Induction.thy	Fri Jun 17 11:35:35 2005 +0200
    43.2 +++ b/doc-src/TutorialI/Recdef/Induction.thy	Fri Jun 17 16:12:49 2005 +0200
    43.3 @@ -1,5 +1,5 @@
    43.4  (*<*)
    43.5 -theory Induction = examples + simplification:;
    43.6 +theory Induction imports examples simplification begin;
    43.7  (*>*)
    43.8  
    43.9  text{*
    44.1 --- a/doc-src/TutorialI/Recdef/Nested0.thy	Fri Jun 17 11:35:35 2005 +0200
    44.2 +++ b/doc-src/TutorialI/Recdef/Nested0.thy	Fri Jun 17 16:12:49 2005 +0200
    44.3 @@ -1,5 +1,5 @@
    44.4  (*<*)
    44.5 -theory Nested0 = Main:
    44.6 +theory Nested0 imports Main begin
    44.7  (*>*)
    44.8  
    44.9  text{*
    45.1 --- a/doc-src/TutorialI/Recdef/Nested1.thy	Fri Jun 17 11:35:35 2005 +0200
    45.2 +++ b/doc-src/TutorialI/Recdef/Nested1.thy	Fri Jun 17 16:12:49 2005 +0200
    45.3 @@ -1,5 +1,5 @@
    45.4  (*<*)
    45.5 -theory Nested1 = Nested0:
    45.6 +theory Nested1 imports Nested0 begin
    45.7  (*>*)
    45.8  
    45.9  text{*\noindent
    46.1 --- a/doc-src/TutorialI/Recdef/Nested2.thy	Fri Jun 17 11:35:35 2005 +0200
    46.2 +++ b/doc-src/TutorialI/Recdef/Nested2.thy	Fri Jun 17 16:12:49 2005 +0200
    46.3 @@ -1,5 +1,5 @@
    46.4  (*<*)
    46.5 -theory Nested2 = Nested0:
    46.6 +theory Nested2 imports Nested0 begin
    46.7  (*>*)
    46.8  
    46.9  lemma [simp]: "t \<in> set ts \<longrightarrow> size t < Suc(term_list_size ts)"
    47.1 --- a/doc-src/TutorialI/Recdef/examples.thy	Fri Jun 17 11:35:35 2005 +0200
    47.2 +++ b/doc-src/TutorialI/Recdef/examples.thy	Fri Jun 17 16:12:49 2005 +0200
    47.3 @@ -1,5 +1,5 @@
    47.4  (*<*)
    47.5 -theory examples = Main:;
    47.6 +theory examples imports Main begin;
    47.7  (*>*)
    47.8  
    47.9  text{*
    48.1 --- a/doc-src/TutorialI/Recdef/simplification.thy	Fri Jun 17 11:35:35 2005 +0200
    48.2 +++ b/doc-src/TutorialI/Recdef/simplification.thy	Fri Jun 17 16:12:49 2005 +0200
    48.3 @@ -1,5 +1,5 @@
    48.4  (*<*)
    48.5 -theory simplification = Main:;
    48.6 +theory simplification imports Main begin;
    48.7  (*>*)
    48.8  
    48.9  text{*
    49.1 --- a/doc-src/TutorialI/Recdef/termination.thy	Fri Jun 17 11:35:35 2005 +0200
    49.2 +++ b/doc-src/TutorialI/Recdef/termination.thy	Fri Jun 17 16:12:49 2005 +0200
    49.3 @@ -1,5 +1,5 @@
    49.4  (*<*)
    49.5 -theory termination = examples:
    49.6 +theory termination imports examples begin
    49.7  (*>*)
    49.8  
    49.9  text{*
    50.1 --- a/doc-src/TutorialI/Rules/Basic.thy	Fri Jun 17 11:35:35 2005 +0200
    50.2 +++ b/doc-src/TutorialI/Rules/Basic.thy	Fri Jun 17 16:12:49 2005 +0200
    50.3 @@ -1,5 +1,5 @@
    50.4  (* ID:         $Id$ *)
    50.5 -theory Basic = Main:
    50.6 +theory Basic imports Main begin
    50.7  
    50.8  lemma conj_rule: "\<lbrakk> P; Q \<rbrakk> \<Longrightarrow> P \<and> (Q \<and> P)"
    50.9  apply (rule conjI)
    51.1 --- a/doc-src/TutorialI/Rules/Blast.thy	Fri Jun 17 11:35:35 2005 +0200
    51.2 +++ b/doc-src/TutorialI/Rules/Blast.thy	Fri Jun 17 16:12:49 2005 +0200
    51.3 @@ -1,5 +1,5 @@
    51.4  (* ID:         $Id$ *)
    51.5 -theory Blast = Main:
    51.6 +theory Blast imports Main begin
    51.7  
    51.8  lemma "((\<exists>x. \<forall>y. p(x)=p(y)) = ((\<exists>x. q(x))=(\<forall>y. p(y))))   =    
    51.9         ((\<exists>x. \<forall>y. q(x)=q(y)) = ((\<exists>x. p(x))=(\<forall>y. q(y))))"
    52.1 --- a/doc-src/TutorialI/Rules/Force.thy	Fri Jun 17 11:35:35 2005 +0200
    52.2 +++ b/doc-src/TutorialI/Rules/Force.thy	Fri Jun 17 16:12:49 2005 +0200
    52.3 @@ -1,5 +1,5 @@
    52.4  (* ID:         $Id$ *)
    52.5 -theory Force = Main: 
    52.6 +theory Force imports Main begin 
    52.7    (*Use Divides rather than Main to experiment with the first proof.
    52.8      Otherwise, it is done by the nat_divide_cancel_factor simprocs.*)
    52.9  
    53.1 --- a/doc-src/TutorialI/Rules/Forward.thy	Fri Jun 17 11:35:35 2005 +0200
    53.2 +++ b/doc-src/TutorialI/Rules/Forward.thy	Fri Jun 17 16:12:49 2005 +0200
    53.3 @@ -1,4 +1,4 @@
    53.4 -theory Forward = Primes:
    53.5 +theory Forward imports Primes begin
    53.6  
    53.7  text{*\noindent
    53.8  Forward proof material: of, OF, THEN, simplify, rule_format.
    54.1 --- a/doc-src/TutorialI/Rules/Primes.thy	Fri Jun 17 11:35:35 2005 +0200
    54.2 +++ b/doc-src/TutorialI/Rules/Primes.thy	Fri Jun 17 16:12:49 2005 +0200
    54.3 @@ -3,7 +3,7 @@
    54.4  
    54.5  (*Euclid's algorithm 
    54.6    This material now appears AFTER that of Forward.thy *)
    54.7 -theory Primes = Main:
    54.8 +theory Primes imports Main begin
    54.9  consts
   54.10    gcd     :: "nat*nat \<Rightarrow> nat"
   54.11  
    55.1 --- a/doc-src/TutorialI/Rules/Tacticals.thy	Fri Jun 17 11:35:35 2005 +0200
    55.2 +++ b/doc-src/TutorialI/Rules/Tacticals.thy	Fri Jun 17 16:12:49 2005 +0200
    55.3 @@ -1,4 +1,4 @@
    55.4 -theory Tacticals = Main:
    55.5 +theory Tacticals imports Main begin
    55.6  
    55.7  text{*REPEAT*}
    55.8  lemma "\<lbrakk>P\<longrightarrow>Q; Q\<longrightarrow>R; R\<longrightarrow>S; P\<rbrakk> \<Longrightarrow> S"
    56.1 --- a/doc-src/TutorialI/Sets/Examples.thy	Fri Jun 17 11:35:35 2005 +0200
    56.2 +++ b/doc-src/TutorialI/Sets/Examples.thy	Fri Jun 17 16:12:49 2005 +0200
    56.3 @@ -1,5 +1,5 @@
    56.4  (* ID:         $Id$ *)
    56.5 -theory Examples = Main:
    56.6 +theory Examples imports Main begin
    56.7  
    56.8  ML "reset eta_contract"
    56.9  ML "Pretty.setmargin 64"
    57.1 --- a/doc-src/TutorialI/Sets/Functions.thy	Fri Jun 17 11:35:35 2005 +0200
    57.2 +++ b/doc-src/TutorialI/Sets/Functions.thy	Fri Jun 17 16:12:49 2005 +0200
    57.3 @@ -1,5 +1,5 @@
    57.4  (* ID:         $Id$ *)
    57.5 -theory Functions = Main:
    57.6 +theory Functions imports Main begin
    57.7  
    57.8  ML "Pretty.setmargin 64"
    57.9  
    58.1 --- a/doc-src/TutorialI/Sets/Recur.thy	Fri Jun 17 11:35:35 2005 +0200
    58.2 +++ b/doc-src/TutorialI/Sets/Recur.thy	Fri Jun 17 16:12:49 2005 +0200
    58.3 @@ -1,5 +1,5 @@
    58.4  (* ID:         $Id$ *)
    58.5 -theory Recur = Main:
    58.6 +theory Recur imports Main begin
    58.7  
    58.8  ML "Pretty.setmargin 64"
    58.9  
    59.1 --- a/doc-src/TutorialI/Sets/Relations.thy	Fri Jun 17 11:35:35 2005 +0200
    59.2 +++ b/doc-src/TutorialI/Sets/Relations.thy	Fri Jun 17 16:12:49 2005 +0200
    59.3 @@ -1,5 +1,5 @@
    59.4  (* ID:         $Id$ *)
    59.5 -theory Relations = Main:
    59.6 +theory Relations imports Main begin
    59.7  
    59.8  ML "Pretty.setmargin 64"
    59.9  
    60.1 --- a/doc-src/TutorialI/Trie/Trie.thy	Fri Jun 17 11:35:35 2005 +0200
    60.2 +++ b/doc-src/TutorialI/Trie/Trie.thy	Fri Jun 17 16:12:49 2005 +0200
    60.3 @@ -1,5 +1,5 @@
    60.4  (*<*)
    60.5 -theory Trie = Main:;
    60.6 +theory Trie imports Main begin;
    60.7  (*>*)
    60.8  text{*
    60.9  To minimize running time, each node of a trie should contain an array that maps
    61.1 --- a/doc-src/TutorialI/Types/Numbers.thy	Fri Jun 17 11:35:35 2005 +0200
    61.2 +++ b/doc-src/TutorialI/Types/Numbers.thy	Fri Jun 17 16:12:49 2005 +0200
    61.3 @@ -1,5 +1,5 @@
    61.4  (* ID:         $Id$ *)
    61.5 -theory Numbers = Real:
    61.6 +theory Numbers imports Real begin
    61.7  
    61.8  ML "Pretty.setmargin 64"
    61.9  ML "IsarOutput.indent := 0"  (*we don't want 5 for listing theorems*)
    62.1 --- a/doc-src/TutorialI/Types/Records.thy	Fri Jun 17 11:35:35 2005 +0200
    62.2 +++ b/doc-src/TutorialI/Types/Records.thy	Fri Jun 17 16:12:49 2005 +0200
    62.3 @@ -2,7 +2,7 @@
    62.4  header {* Records \label{sec:records} *}
    62.5  
    62.6  (*<*)
    62.7 -theory Records = Main:
    62.8 +theory Records imports Main begin
    62.9  (*>*)
   62.10  
   62.11  text {*
    63.1 --- a/doc-src/ZF/FOL_examples.thy	Fri Jun 17 11:35:35 2005 +0200
    63.2 +++ b/doc-src/ZF/FOL_examples.thy	Fri Jun 17 16:12:49 2005 +0200
    63.3 @@ -1,6 +1,6 @@
    63.4  header{*Examples of Classical Reasoning*}
    63.5  
    63.6 -theory FOL_examples = FOL:
    63.7 +theory FOL_examples imports FOL begin
    63.8  
    63.9  lemma "EX y. ALL x. P(y)-->P(x)"
   63.10    --{* @{subgoals[display,indent=0,margin=65]} *}
    64.1 --- a/doc-src/ZF/IFOL_examples.thy	Fri Jun 17 11:35:35 2005 +0200
    64.2 +++ b/doc-src/ZF/IFOL_examples.thy	Fri Jun 17 16:12:49 2005 +0200
    64.3 @@ -1,6 +1,6 @@
    64.4  header{*Examples of Intuitionistic Reasoning*}
    64.5  
    64.6 -theory IFOL_examples = IFOL:
    64.7 +theory IFOL_examples imports IFOL begin
    64.8  
    64.9  text{*Quantifier example from the book Logic and Computation*}
   64.10  lemma "(EX y. ALL x. Q(x,y)) -->  (ALL x. EX y. Q(x,y))"
    65.1 --- a/doc-src/ZF/If.thy	Fri Jun 17 11:35:35 2005 +0200
    65.2 +++ b/doc-src/ZF/If.thy	Fri Jun 17 16:12:49 2005 +0200
    65.3 @@ -6,7 +6,7 @@
    65.4  First-Order Logic: the 'if' example.
    65.5  *)
    65.6  
    65.7 -theory If = FOL:
    65.8 +theory If imports FOL begin
    65.9  
   65.10  constdefs
   65.11    if :: "[o,o,o]=>o"
    66.1 --- a/doc-src/ZF/ZF_examples.thy	Fri Jun 17 11:35:35 2005 +0200
    66.2 +++ b/doc-src/ZF/ZF_examples.thy	Fri Jun 17 16:12:49 2005 +0200
    66.3 @@ -1,6 +1,6 @@
    66.4  header{*Examples of Reasoning in ZF Set Theory*}
    66.5  
    66.6 -theory ZF_examples = Main_ZFC:
    66.7 +theory ZF_examples imports Main_ZFC begin
    66.8  
    66.9  subsection {* Binary Trees *}
   66.10  
    67.1 --- a/src/CTT/Main.thy	Fri Jun 17 11:35:35 2005 +0200
    67.2 +++ b/src/CTT/Main.thy	Fri Jun 17 16:12:49 2005 +0200
    67.3 @@ -1,6 +1,6 @@
    67.4  
    67.5  (*theory Main includes everything*)
    67.6  
    67.7 -theory Main = CTT + Arith + Bool:
    67.8 +theory Main imports CTT Arith Bool begin
    67.9  
   67.10  end
    68.1 --- a/src/FOL/FOL.thy	Fri Jun 17 11:35:35 2005 +0200
    68.2 +++ b/src/FOL/FOL.thy	Fri Jun 17 16:12:49 2005 +0200
    68.3 @@ -7,7 +7,7 @@
    68.4  
    68.5  theory FOL 
    68.6  imports IFOL
    68.7 -files ("FOL_lemmas1.ML") ("cladata.ML") ("blastdata.ML") ("simpdata.ML")
    68.8 +uses ("FOL_lemmas1.ML") ("cladata.ML") ("blastdata.ML") ("simpdata.ML")
    68.9        ("eqrule_FOL_data.ML")
   68.10        ("~~/src/Provers/eqsubst.ML")
   68.11  begin  
    69.1 --- a/src/FOL/IFOL.thy	Fri Jun 17 11:35:35 2005 +0200
    69.2 +++ b/src/FOL/IFOL.thy	Fri Jun 17 16:12:49 2005 +0200
    69.3 @@ -7,7 +7,7 @@
    69.4  
    69.5  theory IFOL
    69.6  imports Pure
    69.7 -files ("IFOL_lemmas.ML") ("fologic.ML") ("hypsubstdata.ML") ("intprover.ML")
    69.8 +uses ("IFOL_lemmas.ML") ("fologic.ML") ("hypsubstdata.ML") ("intprover.ML")
    69.9  begin
   69.10  
   69.11  
    70.1 --- a/src/FOL/ex/Classical.thy	Fri Jun 17 11:35:35 2005 +0200
    70.2 +++ b/src/FOL/ex/Classical.thy	Fri Jun 17 16:12:49 2005 +0200
    70.3 @@ -6,7 +6,7 @@
    70.4  
    70.5  header{*Classical Predicate Calculus Problems*}
    70.6  
    70.7 -theory Classical = FOL:
    70.8 +theory Classical imports FOL begin
    70.9  
   70.10  lemma "(P --> Q | R) --> (P-->Q) | (P-->R)"
   70.11  by blast
    71.1 --- a/src/FOL/ex/First_Order_Logic.thy	Fri Jun 17 11:35:35 2005 +0200
    71.2 +++ b/src/FOL/ex/First_Order_Logic.thy	Fri Jun 17 16:12:49 2005 +0200
    71.3 @@ -5,7 +5,7 @@
    71.4  
    71.5  header {* A simple formulation of First-Order Logic *}
    71.6  
    71.7 -theory First_Order_Logic = Pure:
    71.8 +theory First_Order_Logic imports Pure begin
    71.9  
   71.10  text {*
   71.11    The subsequent theory development illustrates single-sorted
    72.1 --- a/src/FOL/ex/If.thy	Fri Jun 17 11:35:35 2005 +0200
    72.2 +++ b/src/FOL/ex/If.thy	Fri Jun 17 16:12:49 2005 +0200
    72.3 @@ -6,7 +6,7 @@
    72.4  
    72.5  header {* First-Order Logic: the 'if' example *}
    72.6  
    72.7 -theory If = FOL:
    72.8 +theory If imports FOL begin
    72.9  
   72.10  constdefs
   72.11    if :: "[o,o,o]=>o"
    73.1 --- a/src/FOL/ex/IffOracle.thy	Fri Jun 17 11:35:35 2005 +0200
    73.2 +++ b/src/FOL/ex/IffOracle.thy	Fri Jun 17 16:12:49 2005 +0200
    73.3 @@ -6,7 +6,7 @@
    73.4  
    73.5  header{*Example of Declaring an Oracle*}
    73.6  
    73.7 -theory IffOracle = FOL:
    73.8 +theory IffOracle imports FOL begin
    73.9  
   73.10  text{*This oracle makes tautologies of the form "P <-> P <-> P <-> P".
   73.11  The length is specified by an integer, which is checked to be even and 
    74.1 --- a/src/FOL/ex/Intuitionistic.thy	Fri Jun 17 11:35:35 2005 +0200
    74.2 +++ b/src/FOL/ex/Intuitionistic.thy	Fri Jun 17 16:12:49 2005 +0200
    74.3 @@ -6,7 +6,7 @@
    74.4  
    74.5  header{*Intuitionistic First-Order Logic*}
    74.6  
    74.7 -theory Intuitionistic = IFOL:
    74.8 +theory Intuitionistic imports IFOL begin
    74.9  
   74.10  (*
   74.11  Single-step ML commands:
    75.1 --- a/src/FOL/ex/Natural_Numbers.thy	Fri Jun 17 11:35:35 2005 +0200
    75.2 +++ b/src/FOL/ex/Natural_Numbers.thy	Fri Jun 17 16:12:49 2005 +0200
    75.3 @@ -5,7 +5,7 @@
    75.4  
    75.5  header {* Natural numbers *}
    75.6  
    75.7 -theory Natural_Numbers = FOL:
    75.8 +theory Natural_Numbers imports FOL begin
    75.9  
   75.10  text {*
   75.11    Theory of the natural numbers: Peano's axioms, primitive recursion.
    76.1 --- a/src/FOL/ex/int.thy	Fri Jun 17 11:35:35 2005 +0200
    76.2 +++ b/src/FOL/ex/int.thy	Fri Jun 17 16:12:49 2005 +0200
    76.3 @@ -6,6 +6,6 @@
    76.4  Intuitionistic First-Order Logic.
    76.5  *)
    76.6  
    76.7 -theory int = IFOL:
    76.8 +theory int imports IFOL begin
    76.9  
   76.10  end
    77.1 --- a/src/HOL/Algebra/Bij.thy	Fri Jun 17 11:35:35 2005 +0200
    77.2 +++ b/src/HOL/Algebra/Bij.thy	Fri Jun 17 16:12:49 2005 +0200
    77.3 @@ -5,7 +5,7 @@
    77.4  
    77.5  header {* Bijections of a Set, Permutation Groups, Automorphism Groups *}
    77.6  
    77.7 -theory Bij = Group:
    77.8 +theory Bij imports Group begin
    77.9  
   77.10  constdefs
   77.11    Bij :: "'a set \<Rightarrow> ('a \<Rightarrow> 'a) set"
    78.1 --- a/src/HOL/Algebra/CRing.thy	Fri Jun 17 11:35:35 2005 +0200
    78.2 +++ b/src/HOL/Algebra/CRing.thy	Fri Jun 17 16:12:49 2005 +0200
    78.3 @@ -7,8 +7,8 @@
    78.4  
    78.5  header {* Abelian Groups *}
    78.6  
    78.7 -theory CRing = FiniteProduct
    78.8 -files ("ringsimp.ML"):
    78.9 +theory CRing imports FiniteProduct
   78.10 +uses ("ringsimp.ML") begin
   78.11  
   78.12  record 'a ring = "'a monoid" +
   78.13    zero :: 'a ("\<zero>\<index>")
    79.1 --- a/src/HOL/Algebra/Coset.thy	Fri Jun 17 11:35:35 2005 +0200
    79.2 +++ b/src/HOL/Algebra/Coset.thy	Fri Jun 17 16:12:49 2005 +0200
    79.3 @@ -5,7 +5,7 @@
    79.4  
    79.5  header{*Cosets and Quotient Groups*}
    79.6  
    79.7 -theory Coset = Group + Exponent:
    79.8 +theory Coset imports Group Exponent begin
    79.9  
   79.10  constdefs (structure G)
   79.11    r_coset    :: "[_, 'a set, 'a] \<Rightarrow> 'a set"    (infixl "#>\<index>" 60)
    80.1 --- a/src/HOL/Algebra/Exponent.thy	Fri Jun 17 11:35:35 2005 +0200
    80.2 +++ b/src/HOL/Algebra/Exponent.thy	Fri Jun 17 16:12:49 2005 +0200
    80.3 @@ -7,7 +7,7 @@
    80.4  
    80.5  header{*The Combinatorial Argument Underlying the First Sylow Theorem*}
    80.6  
    80.7 -theory Exponent = Main + Primes:
    80.8 +theory Exponent imports Main Primes begin
    80.9  
   80.10  constdefs
   80.11    exponent      :: "[nat, nat] => nat"
    81.1 --- a/src/HOL/Algebra/FiniteProduct.thy	Fri Jun 17 11:35:35 2005 +0200
    81.2 +++ b/src/HOL/Algebra/FiniteProduct.thy	Fri Jun 17 16:12:49 2005 +0200
    81.3 @@ -7,7 +7,7 @@
    81.4  
    81.5  header {* Product Operator for Commutative Monoids *}
    81.6  
    81.7 -theory FiniteProduct = Group:
    81.8 +theory FiniteProduct imports Group begin
    81.9  
   81.10  text {* Instantiation of locale @{text LC} of theory @{text Finite_Set} is not
   81.11    possible, because here we have explicit typing rules like 
    82.1 --- a/src/HOL/Algebra/Group.thy	Fri Jun 17 11:35:35 2005 +0200
    82.2 +++ b/src/HOL/Algebra/Group.thy	Fri Jun 17 16:12:49 2005 +0200
    82.3 @@ -8,7 +8,7 @@
    82.4  
    82.5  header {* Groups *}
    82.6  
    82.7 -theory Group = FuncSet + Lattice:
    82.8 +theory Group imports FuncSet Lattice begin
    82.9  
   82.10  
   82.11  section {* Monoids and Groups *}
    83.1 --- a/src/HOL/Algebra/Lattice.thy	Fri Jun 17 11:35:35 2005 +0200
    83.2 +++ b/src/HOL/Algebra/Lattice.thy	Fri Jun 17 16:12:49 2005 +0200
    83.3 @@ -7,7 +7,7 @@
    83.4  
    83.5  header {* Orders and Lattices *}
    83.6  
    83.7 -theory Lattice = Main:
    83.8 +theory Lattice imports Main begin
    83.9  
   83.10  text {* Object with a carrier set. *}
   83.11  
    84.1 --- a/src/HOL/Algebra/Module.thy	Fri Jun 17 11:35:35 2005 +0200
    84.2 +++ b/src/HOL/Algebra/Module.thy	Fri Jun 17 16:12:49 2005 +0200
    84.3 @@ -6,7 +6,7 @@
    84.4  
    84.5  header {* Modules over an Abelian Group *}
    84.6  
    84.7 -theory Module = CRing:
    84.8 +theory Module imports CRing begin
    84.9  
   84.10  record ('a, 'b) module = "'b ring" +
   84.11    smult :: "['a, 'b] => 'b" (infixl "\<odot>\<index>" 70)
    85.1 --- a/src/HOL/Algebra/Sylow.thy	Fri Jun 17 11:35:35 2005 +0200
    85.2 +++ b/src/HOL/Algebra/Sylow.thy	Fri Jun 17 16:12:49 2005 +0200
    85.3 @@ -5,7 +5,7 @@
    85.4  
    85.5  header {* Sylow's theorem *}
    85.6  
    85.7 -theory Sylow = Coset:
    85.8 +theory Sylow imports Coset begin
    85.9  
   85.10  text {*
   85.11    See also \cite{Kammueller-Paulson:1999}.
    86.1 --- a/src/HOL/Algebra/UnivPoly.thy	Fri Jun 17 11:35:35 2005 +0200
    86.2 +++ b/src/HOL/Algebra/UnivPoly.thy	Fri Jun 17 16:12:49 2005 +0200
    86.3 @@ -7,7 +7,7 @@
    86.4  
    86.5  header {* Univariate Polynomials *}
    86.6  
    86.7 -theory UnivPoly = Module:
    86.8 +theory UnivPoly imports Module begin
    86.9  
   86.10  text {*
   86.11    Polynomials are formalised as modules with additional operations for
    87.1 --- a/src/HOL/Algebra/abstract/Abstract.thy	Fri Jun 17 11:35:35 2005 +0200
    87.2 +++ b/src/HOL/Algebra/abstract/Abstract.thy	Fri Jun 17 16:12:49 2005 +0200
    87.3 @@ -4,6 +4,6 @@
    87.4      Author: Clemens Ballarin, started 17 July 1997
    87.5  *)
    87.6  
    87.7 -theory Abstract = RingHomo + Field:
    87.8 +theory Abstract imports RingHomo Field begin
    87.9  
   87.10  end
    88.1 --- a/src/HOL/Algebra/abstract/Ring.thy	Fri Jun 17 11:35:35 2005 +0200
    88.2 +++ b/src/HOL/Algebra/abstract/Ring.thy	Fri Jun 17 16:12:49 2005 +0200
    88.3 @@ -7,8 +7,8 @@
    88.4  
    88.5  header {* The algebraic hierarchy of rings as axiomatic classes *}
    88.6  
    88.7 -theory Ring = Main
    88.8 -files ("order.ML"):
    88.9 +theory Ring imports Main
   88.10 +uses ("order.ML") begin
   88.11  
   88.12  section {* Constants *}
   88.13  
    89.1 --- a/src/HOL/Algebra/poly/LongDiv.thy	Fri Jun 17 11:35:35 2005 +0200
    89.2 +++ b/src/HOL/Algebra/poly/LongDiv.thy	Fri Jun 17 16:12:49 2005 +0200
    89.3 @@ -4,7 +4,7 @@
    89.4      Author: Clemens Ballarin, started 23 June 1999
    89.5  *)
    89.6  
    89.7 -theory LongDiv = PolyHomo:
    89.8 +theory LongDiv imports PolyHomo begin
    89.9  
   89.10  consts
   89.11    lcoeff :: "'a::ring up => 'a"
    90.1 --- a/src/HOL/Auth/CertifiedEmail.thy	Fri Jun 17 11:35:35 2005 +0200
    90.2 +++ b/src/HOL/Auth/CertifiedEmail.thy	Fri Jun 17 16:12:49 2005 +0200
    90.3 @@ -5,7 +5,7 @@
    90.4  
    90.5  header{*The Certified Electronic Mail Protocol by Abadi et al.*}
    90.6  
    90.7 -theory CertifiedEmail = Public:
    90.8 +theory CertifiedEmail imports Public begin
    90.9  
   90.10  syntax
   90.11    TTP        :: agent
    91.1 --- a/src/HOL/Auth/Event.thy	Fri Jun 17 11:35:35 2005 +0200
    91.2 +++ b/src/HOL/Auth/Event.thy	Fri Jun 17 16:12:49 2005 +0200
    91.3 @@ -11,7 +11,7 @@
    91.4  
    91.5  header{*Theory of Events for Security Protocols*}
    91.6  
    91.7 -theory Event = Message:
    91.8 +theory Event imports Message begin
    91.9  
   91.10  consts  (*Initial states of agents -- parameter of the construction*)
   91.11    initState :: "agent => msg set"
    92.1 --- a/src/HOL/Auth/Guard/Analz.thy	Fri Jun 17 11:35:35 2005 +0200
    92.2 +++ b/src/HOL/Auth/Guard/Analz.thy	Fri Jun 17 16:12:49 2005 +0200
    92.3 @@ -11,7 +11,7 @@
    92.4  
    92.5  header{*Decomposition of Analz into two parts*}
    92.6  
    92.7 -theory Analz = Extensions:
    92.8 +theory Analz imports Extensions begin
    92.9  
   92.10  text{*decomposition of @{term analz} into two parts: 
   92.11        @{term pparts} (for pairs) and analz of @{term kparts}*}
    93.1 --- a/src/HOL/Auth/Guard/Extensions.thy	Fri Jun 17 11:35:35 2005 +0200
    93.2 +++ b/src/HOL/Auth/Guard/Extensions.thy	Fri Jun 17 16:12:49 2005 +0200
    93.3 @@ -11,7 +11,7 @@
    93.4  
    93.5  header {*Extensions to Standard Theories*}
    93.6  
    93.7 -theory Extensions = Event:
    93.8 +theory Extensions imports Event begin
    93.9  
   93.10  subsection{*Extensions to Theory @{text Set}*}
   93.11  
    94.1 --- a/src/HOL/Auth/Guard/Guard.thy	Fri Jun 17 11:35:35 2005 +0200
    94.2 +++ b/src/HOL/Auth/Guard/Guard.thy	Fri Jun 17 16:12:49 2005 +0200
    94.3 @@ -11,7 +11,7 @@
    94.4  
    94.5  header{*Protocol-Independent Confidentiality Theorem on Nonces*}
    94.6  
    94.7 -theory Guard = Analz + Extensions:
    94.8 +theory Guard imports Analz Extensions begin
    94.9  
   94.10  (******************************************************************************
   94.11  messages where all the occurrences of Nonce n are
    95.1 --- a/src/HOL/Auth/Guard/GuardK.thy	Fri Jun 17 11:35:35 2005 +0200
    95.2 +++ b/src/HOL/Auth/Guard/GuardK.thy	Fri Jun 17 16:12:49 2005 +0200
    95.3 @@ -16,7 +16,7 @@
    95.4  
    95.5  header{*protocol-independent confidentiality theorem on keys*}
    95.6  
    95.7 -theory GuardK = Analz + Extensions:
    95.8 +theory GuardK imports Analz Extensions begin
    95.9  
   95.10  (******************************************************************************
   95.11  messages where all the occurrences of Key n are
    96.1 --- a/src/HOL/Auth/Guard/Guard_Public.thy	Fri Jun 17 11:35:35 2005 +0200
    96.2 +++ b/src/HOL/Auth/Guard/Guard_Public.thy	Fri Jun 17 16:12:49 2005 +0200
    96.3 @@ -11,7 +11,7 @@
    96.4  Cambridge CB3 0FD, United Kingdom
    96.5  ******************************************************************************)
    96.6  
    96.7 -theory Guard_Public = Guard + Public + Extensions:
    96.8 +theory Guard_Public imports Guard Public Extensions begin
    96.9  
   96.10  subsection{*Extensions to Theory @{text Public}*}
   96.11  
    97.1 --- a/src/HOL/Auth/Guard/Guard_Shared.thy	Fri Jun 17 11:35:35 2005 +0200
    97.2 +++ b/src/HOL/Auth/Guard/Guard_Shared.thy	Fri Jun 17 16:12:49 2005 +0200
    97.3 @@ -11,7 +11,7 @@
    97.4  
    97.5  header{*lemmas on guarded messages for protocols with symmetric keys*}
    97.6  
    97.7 -theory Guard_Shared = Guard + GuardK + Shared:
    97.8 +theory Guard_Shared imports Guard GuardK Shared begin
    97.9  
   97.10  subsection{*Extensions to Theory @{text Shared}*}
   97.11  
    98.1 --- a/src/HOL/Auth/Guard/List_Msg.thy	Fri Jun 17 11:35:35 2005 +0200
    98.2 +++ b/src/HOL/Auth/Guard/List_Msg.thy	Fri Jun 17 16:12:49 2005 +0200
    98.3 @@ -11,7 +11,7 @@
    98.4  
    98.5  header{*Lists of Messages and Lists of Agents*}
    98.6  
    98.7 -theory List_Msg = Extensions:
    98.8 +theory List_Msg imports Extensions begin
    98.9  
   98.10  subsection{*Implementation of Lists by Messages*}
   98.11  
    99.1 --- a/src/HOL/Auth/Guard/NS_Public.thy	Fri Jun 17 11:35:35 2005 +0200
    99.2 +++ b/src/HOL/Auth/Guard/NS_Public.thy	Fri Jun 17 16:12:49 2005 +0200
    99.3 @@ -13,7 +13,7 @@
    99.4  
    99.5  header{*Needham-Schroeder-Lowe Public-Key Protocol*}
    99.6  
    99.7 -theory NS_Public = Guard_Public:
    99.8 +theory NS_Public imports Guard_Public begin
    99.9  
   99.10  subsection{*messages used in the protocol*}
   99.11  
   100.1 --- a/src/HOL/Auth/Guard/OtwayRees.thy	Fri Jun 17 11:35:35 2005 +0200
   100.2 +++ b/src/HOL/Auth/Guard/OtwayRees.thy	Fri Jun 17 16:12:49 2005 +0200
   100.3 @@ -11,7 +11,7 @@
   100.4  
   100.5  header{*Otway-Rees Protocol*}
   100.6  
   100.7 -theory OtwayRees = Guard_Shared:
   100.8 +theory OtwayRees imports Guard_Shared begin
   100.9  
  100.10  subsection{*messages used in the protocol*}
  100.11  
   101.1 --- a/src/HOL/Auth/Guard/P1.thy	Fri Jun 17 11:35:35 2005 +0200
   101.2 +++ b/src/HOL/Auth/Guard/P1.thy	Fri Jun 17 16:12:49 2005 +0200
   101.3 @@ -15,7 +15,7 @@
   101.4  
   101.5  header{*Protocol P1*}
   101.6  
   101.7 -theory P1 = Guard_Public + List_Msg:
   101.8 +theory P1 imports Guard_Public List_Msg begin
   101.9  
  101.10  subsection{*Protocol Definition*}
  101.11  
   102.1 --- a/src/HOL/Auth/Guard/P2.thy	Fri Jun 17 11:35:35 2005 +0200
   102.2 +++ b/src/HOL/Auth/Guard/P2.thy	Fri Jun 17 16:12:49 2005 +0200
   102.3 @@ -15,7 +15,7 @@
   102.4  
   102.5  header{*Protocol P2*}
   102.6  
   102.7 -theory P2 = Guard_Public + List_Msg:
   102.8 +theory P2 imports Guard_Public List_Msg begin
   102.9  
  102.10  subsection{*Protocol Definition*}
  102.11  
   103.1 --- a/src/HOL/Auth/Guard/Proto.thy	Fri Jun 17 11:35:35 2005 +0200
   103.2 +++ b/src/HOL/Auth/Guard/Proto.thy	Fri Jun 17 16:12:49 2005 +0200
   103.3 @@ -11,7 +11,7 @@
   103.4  
   103.5  header{*Other Protocol-Independent Results*}
   103.6  
   103.7 -theory Proto = Guard_Public:
   103.8 +theory Proto imports Guard_Public begin
   103.9  
  103.10  subsection{*protocols*}
  103.11  
   104.1 --- a/src/HOL/Auth/Guard/Yahalom.thy	Fri Jun 17 11:35:35 2005 +0200
   104.2 +++ b/src/HOL/Auth/Guard/Yahalom.thy	Fri Jun 17 16:12:49 2005 +0200
   104.3 @@ -11,7 +11,7 @@
   104.4  
   104.5  header{*Yahalom Protocol*}
   104.6  
   104.7 -theory Yahalom = Guard_Shared:
   104.8 +theory Yahalom imports Guard_Shared begin
   104.9  
  104.10  subsection{*messages used in the protocol*}
  104.11  
   105.1 --- a/src/HOL/Auth/KerberosIV.thy	Fri Jun 17 11:35:35 2005 +0200
   105.2 +++ b/src/HOL/Auth/KerberosIV.thy	Fri Jun 17 16:12:49 2005 +0200
   105.3 @@ -6,7 +6,7 @@
   105.4  
   105.5  header{*The Kerberos Protocol, Version IV*}
   105.6  
   105.7 -theory KerberosIV = Public:
   105.8 +theory KerberosIV imports Public begin
   105.9  
  105.10  syntax
  105.11    Kas :: agent
   106.1 --- a/src/HOL/Auth/Kerberos_BAN.thy	Fri Jun 17 11:35:35 2005 +0200
   106.2 +++ b/src/HOL/Auth/Kerberos_BAN.thy	Fri Jun 17 16:12:49 2005 +0200
   106.3 @@ -8,7 +8,7 @@
   106.4  
   106.5  header{*The Kerberos Protocol, BAN Version*}
   106.6  
   106.7 -theory Kerberos_BAN = Public:
   106.8 +theory Kerberos_BAN imports Public begin
   106.9  
  106.10  text{*From page 251 of
  106.11    Burrows, Abadi and Needham (1989).  A Logic of Authentication.
   107.1 --- a/src/HOL/Auth/Message.thy	Fri Jun 17 11:35:35 2005 +0200
   107.2 +++ b/src/HOL/Auth/Message.thy	Fri Jun 17 16:12:49 2005 +0200
   107.3 @@ -9,7 +9,7 @@
   107.4  
   107.5  header{*Theory of Agents and Messages for Security Protocols*}
   107.6  
   107.7 -theory Message = Main:
   107.8 +theory Message imports Main begin
   107.9  
  107.10  (*Needed occasionally with spy_analz_tac, e.g. in analz_insert_Key_newK*)
  107.11  lemma [simp] : "A \<union> (B \<union> A) = B \<union> A"
   108.1 --- a/src/HOL/Auth/NS_Public.thy	Fri Jun 17 11:35:35 2005 +0200
   108.2 +++ b/src/HOL/Auth/NS_Public.thy	Fri Jun 17 16:12:49 2005 +0200
   108.3 @@ -9,7 +9,7 @@
   108.4  
   108.5  header{*Verifying the Needham-Schroeder-Lowe Public-Key Protocol*}
   108.6  
   108.7 -theory NS_Public = Public:
   108.8 +theory NS_Public imports Public begin
   108.9  
  108.10  consts  ns_public  :: "event list set"
  108.11  
   109.1 --- a/src/HOL/Auth/NS_Public_Bad.thy	Fri Jun 17 11:35:35 2005 +0200
   109.2 +++ b/src/HOL/Auth/NS_Public_Bad.thy	Fri Jun 17 16:12:49 2005 +0200
   109.3 @@ -13,7 +13,7 @@
   109.4  
   109.5  header{*Verifying the Needham-Schroeder Public-Key Protocol*}
   109.6  
   109.7 -theory NS_Public_Bad = Public:
   109.8 +theory NS_Public_Bad imports Public begin
   109.9  
  109.10  consts  ns_public  :: "event list set"
  109.11  
   110.1 --- a/src/HOL/Auth/NS_Shared.thy	Fri Jun 17 11:35:35 2005 +0200
   110.2 +++ b/src/HOL/Auth/NS_Shared.thy	Fri Jun 17 16:12:49 2005 +0200
   110.3 @@ -6,7 +6,7 @@
   110.4  
   110.5  header{*The Needham-Schroeder Shared-Key Protocol*}
   110.6  
   110.7 -theory NS_Shared = Public:
   110.8 +theory NS_Shared imports Public begin
   110.9  
  110.10  text{*
  110.11  From page 247 of
   111.1 --- a/src/HOL/Auth/OtwayRees.thy	Fri Jun 17 11:35:35 2005 +0200
   111.2 +++ b/src/HOL/Auth/OtwayRees.thy	Fri Jun 17 16:12:49 2005 +0200
   111.3 @@ -6,7 +6,7 @@
   111.4  
   111.5  header{*The Original Otway-Rees Protocol*}
   111.6  
   111.7 -theory OtwayRees = Public:
   111.8 +theory OtwayRees imports Public begin
   111.9  
  111.10  text{* From page 244 of
  111.11    Burrows, Abadi and Needham (1989).  A Logic of Authentication.
   112.1 --- a/src/HOL/Auth/OtwayRees_AN.thy	Fri Jun 17 11:35:35 2005 +0200
   112.2 +++ b/src/HOL/Auth/OtwayRees_AN.thy	Fri Jun 17 16:12:49 2005 +0200
   112.3 @@ -6,7 +6,7 @@
   112.4  
   112.5  header{*The Otway-Rees Protocol as Modified by Abadi and Needham*}
   112.6  
   112.7 -theory OtwayRees_AN = Public:
   112.8 +theory OtwayRees_AN imports Public begin
   112.9  
  112.10  text{*
  112.11  This simplified version has minimal encryption and explicit messages.
   113.1 --- a/src/HOL/Auth/OtwayRees_Bad.thy	Fri Jun 17 11:35:35 2005 +0200
   113.2 +++ b/src/HOL/Auth/OtwayRees_Bad.thy	Fri Jun 17 16:12:49 2005 +0200
   113.3 @@ -7,7 +7,7 @@
   113.4  
   113.5  header{*The Otway-Rees Protocol: The Faulty BAN Version*}
   113.6  
   113.7 -theory OtwayRees_Bad = Public:
   113.8 +theory OtwayRees_Bad imports Public begin
   113.9  
  113.10  text{*The FAULTY version omitting encryption of Nonce NB, as suggested on 
  113.11  page 247 of
   114.1 --- a/src/HOL/Auth/Public.thy	Fri Jun 17 11:35:35 2005 +0200
   114.2 +++ b/src/HOL/Auth/Public.thy	Fri Jun 17 16:12:49 2005 +0200
   114.3 @@ -8,7 +8,7 @@
   114.4  Private and public keys; initial states of agents
   114.5  *)
   114.6  
   114.7 -theory Public = Event:
   114.8 +theory Public imports Event begin
   114.9  
  114.10  lemma invKey_K: "K \<in> symKeys ==> invKey K = K"
  114.11  by (simp add: symKeys_def)
   115.1 --- a/src/HOL/Auth/Recur.thy	Fri Jun 17 11:35:35 2005 +0200
   115.2 +++ b/src/HOL/Auth/Recur.thy	Fri Jun 17 16:12:49 2005 +0200
   115.3 @@ -6,7 +6,7 @@
   115.4  
   115.5  header{*The Otway-Bull Recursive Authentication Protocol*}
   115.6  
   115.7 -theory Recur = Public:
   115.8 +theory Recur imports Public begin
   115.9  
  115.10  text{*End marker for message bundles*}
  115.11  syntax        END :: "msg"
   116.1 --- a/src/HOL/Auth/Shared.thy	Fri Jun 17 11:35:35 2005 +0200
   116.2 +++ b/src/HOL/Auth/Shared.thy	Fri Jun 17 16:12:49 2005 +0200
   116.3 @@ -8,7 +8,7 @@
   116.4  Shared, long-term keys; initial states of agents
   116.5  *)
   116.6  
   116.7 -theory Shared = Event:
   116.8 +theory Shared imports Event begin
   116.9  
  116.10  consts
  116.11    shrK    :: "agent => key"  (*symmetric keys*);
   117.1 --- a/src/HOL/Auth/TLS.thy	Fri Jun 17 11:35:35 2005 +0200
   117.2 +++ b/src/HOL/Auth/TLS.thy	Fri Jun 17 16:12:49 2005 +0200
   117.3 @@ -41,7 +41,7 @@
   117.4  
   117.5  header{*The TLS Protocol: Transport Layer Security*}
   117.6  
   117.7 -theory TLS = Public + NatPair:
   117.8 +theory TLS imports Public NatPair begin
   117.9  
  117.10  constdefs
  117.11    certificate      :: "[agent,key] => msg"
   118.1 --- a/src/HOL/Auth/WooLam.thy	Fri Jun 17 11:35:35 2005 +0200
   118.2 +++ b/src/HOL/Auth/WooLam.thy	Fri Jun 17 16:12:49 2005 +0200
   118.3 @@ -6,7 +6,7 @@
   118.4  
   118.5  header{*The Woo-Lam Protocol*}
   118.6  
   118.7 -theory WooLam = Public:
   118.8 +theory WooLam imports Public begin
   118.9  
  118.10  text{*Simplified version from page 11 of
  118.11    Abadi and Needham (1996). 
   119.1 --- a/src/HOL/Auth/Yahalom.thy	Fri Jun 17 11:35:35 2005 +0200
   119.2 +++ b/src/HOL/Auth/Yahalom.thy	Fri Jun 17 16:12:49 2005 +0200
   119.3 @@ -6,7 +6,7 @@
   119.4  
   119.5  header{*The Yahalom Protocol*}
   119.6  
   119.7 -theory Yahalom = Public:
   119.8 +theory Yahalom imports Public begin
   119.9  
  119.10  text{*From page 257 of
  119.11    Burrows, Abadi and Needham (1989).  A Logic of Authentication.
   120.1 --- a/src/HOL/Auth/Yahalom2.thy	Fri Jun 17 11:35:35 2005 +0200
   120.2 +++ b/src/HOL/Auth/Yahalom2.thy	Fri Jun 17 16:12:49 2005 +0200
   120.3 @@ -6,7 +6,7 @@
   120.4  
   120.5  header{*The Yahalom Protocol, Variant 2*}
   120.6  
   120.7 -theory Yahalom2 = Public:
   120.8 +theory Yahalom2 imports Public begin
   120.9  
  120.10  text{*
  120.11  This version trades encryption of NB for additional explicitness in YM3.
   121.1 --- a/src/HOL/Auth/Yahalom_Bad.thy	Fri Jun 17 11:35:35 2005 +0200
   121.2 +++ b/src/HOL/Auth/Yahalom_Bad.thy	Fri Jun 17 16:12:49 2005 +0200
   121.3 @@ -6,7 +6,7 @@
   121.4  
   121.5  header{*The Yahalom Protocol: A Flawed Version*}
   121.6  
   121.7 -theory Yahalom_Bad = Public:
   121.8 +theory Yahalom_Bad imports Public begin
   121.9  
  121.10  text{*
  121.11  Demonstrates of why Oops is necessary.  This protocol can be attacked because
   122.1 --- a/src/HOL/Auth/ZhouGollmann.thy	Fri Jun 17 11:35:35 2005 +0200
   122.2 +++ b/src/HOL/Auth/ZhouGollmann.thy	Fri Jun 17 16:12:49 2005 +0200
   122.3 @@ -10,7 +10,7 @@
   122.4    55-61
   122.5  *)
   122.6  
   122.7 -theory ZhouGollmann = Public:
   122.8 +theory ZhouGollmann imports Public begin
   122.9  
  122.10  syntax
  122.11    TTP :: agent
   123.1 --- a/src/HOL/AxClasses/Group.thy	Fri Jun 17 11:35:35 2005 +0200
   123.2 +++ b/src/HOL/AxClasses/Group.thy	Fri Jun 17 16:12:49 2005 +0200
   123.3 @@ -3,7 +3,7 @@
   123.4      Author:     Markus Wenzel, TU Muenchen
   123.5  *)
   123.6  
   123.7 -theory Group = Main:
   123.8 +theory Group imports Main begin
   123.9  
  123.10  subsection {* Monoids and Groups *}
  123.11  
   124.1 --- a/src/HOL/AxClasses/Product.thy	Fri Jun 17 11:35:35 2005 +0200
   124.2 +++ b/src/HOL/AxClasses/Product.thy	Fri Jun 17 16:12:49 2005 +0200
   124.3 @@ -3,7 +3,7 @@
   124.4      Author:     Markus Wenzel, TU Muenchen
   124.5  *)
   124.6  
   124.7 -theory Product = Main:
   124.8 +theory Product imports Main begin
   124.9  
  124.10  axclass product < type
  124.11  
   125.1 --- a/src/HOL/AxClasses/Semigroups.thy	Fri Jun 17 11:35:35 2005 +0200
   125.2 +++ b/src/HOL/AxClasses/Semigroups.thy	Fri Jun 17 16:12:49 2005 +0200
   125.3 @@ -3,7 +3,7 @@
   125.4      Author:     Markus Wenzel, TU Muenchen
   125.5  *)
   125.6  
   125.7 -theory Semigroups = Main:
   125.8 +theory Semigroups imports Main begin
   125.9  
  125.10  consts
  125.11    times :: "'a => 'a => 'a"    (infixl "[*]" 70)
   126.1 --- a/src/HOL/Bali/AxCompl.thy	Fri Jun 17 11:35:35 2005 +0200
   126.2 +++ b/src/HOL/Bali/AxCompl.thy	Fri Jun 17 16:12:49 2005 +0200
   126.3 @@ -7,7 +7,7 @@
   126.4  Completeness proof for Axiomatic semantics of Java expressions and statements
   126.5  *}
   126.6  
   126.7 -theory AxCompl = AxSem:
   126.8 +theory AxCompl imports AxSem begin
   126.9  
  126.10  text {*
  126.11  design issues:
   127.1 --- a/src/HOL/Bali/AxExample.thy	Fri Jun 17 11:35:35 2005 +0200
   127.2 +++ b/src/HOL/Bali/AxExample.thy	Fri Jun 17 16:12:49 2005 +0200
   127.3 @@ -5,7 +5,7 @@
   127.4  
   127.5  header {* Example of a proof based on the Bali axiomatic semantics *}
   127.6  
   127.7 -theory AxExample = AxSem + Example:
   127.8 +theory AxExample imports AxSem Example begin
   127.9  
  127.10  constdefs
  127.11    arr_inv :: "st \<Rightarrow> bool"
   128.1 --- a/src/HOL/Bali/AxSem.thy	Fri Jun 17 11:35:35 2005 +0200
   128.2 +++ b/src/HOL/Bali/AxSem.thy	Fri Jun 17 16:12:49 2005 +0200
   128.3 @@ -7,7 +7,7 @@
   128.4            (see also Eval.thy)
   128.5          *}
   128.6  
   128.7 -theory AxSem = Evaln + TypeSafe:
   128.8 +theory AxSem imports Evaln TypeSafe begin
   128.9  
  128.10  text {*
  128.11  design issues:
   129.1 --- a/src/HOL/Bali/AxSound.thy	Fri Jun 17 11:35:35 2005 +0200
   129.2 +++ b/src/HOL/Bali/AxSound.thy	Fri Jun 17 16:12:49 2005 +0200
   129.3 @@ -8,7 +8,7 @@
   129.4  
   129.5  
   129.6  
   129.7 -theory AxSound = AxSem:
   129.8 +theory AxSound imports AxSem begin
   129.9  
  129.10  section "validity"
  129.11  
   130.1 --- a/src/HOL/Bali/Basis.thy	Fri Jun 17 11:35:35 2005 +0200
   130.2 +++ b/src/HOL/Bali/Basis.thy	Fri Jun 17 16:12:49 2005 +0200
   130.3 @@ -5,7 +5,7 @@
   130.4  *)
   130.5  header {* Definitions extending HOL as logical basis of Bali *}
   130.6  
   130.7 -theory Basis = Main:
   130.8 +theory Basis imports Main begin
   130.9  
  130.10  ML {*
  130.11  Unify.search_bound := 40;
   131.1 --- a/src/HOL/Bali/Conform.thy	Fri Jun 17 11:35:35 2005 +0200
   131.2 +++ b/src/HOL/Bali/Conform.thy	Fri Jun 17 16:12:49 2005 +0200
   131.3 @@ -5,7 +5,7 @@
   131.4  
   131.5  header {* Conformance notions for the type soundness proof for Java *}
   131.6  
   131.7 -theory Conform = State:
   131.8 +theory Conform imports State begin
   131.9  
  131.10  text {*
  131.11  design issues:
   132.1 --- a/src/HOL/Bali/Decl.thy	Fri Jun 17 11:35:35 2005 +0200
   132.2 +++ b/src/HOL/Bali/Decl.thy	Fri Jun 17 16:12:49 2005 +0200
   132.3 @@ -6,7 +6,7 @@
   132.4  *}
   132.5  
   132.6  (** order is significant, because of clash for "var" **)
   132.7 -theory Decl = Term + Table:
   132.8 +theory Decl imports Term Table begin
   132.9  
  132.10  text {*
  132.11  improvements:
   133.1 --- a/src/HOL/Bali/DeclConcepts.thy	Fri Jun 17 11:35:35 2005 +0200
   133.2 +++ b/src/HOL/Bali/DeclConcepts.thy	Fri Jun 17 16:12:49 2005 +0200
   133.3 @@ -5,7 +5,7 @@
   133.4  header {* Advanced concepts on Java declarations like overriding, inheritance,
   133.5  dynamic method lookup*}
   133.6  
   133.7 -theory DeclConcepts = TypeRel:
   133.8 +theory DeclConcepts imports TypeRel begin
   133.9  
  133.10  section "access control (cf. 6.6), overriding and hiding (cf. 8.4.6.1)"
  133.11  
   134.1 --- a/src/HOL/Bali/DefiniteAssignment.thy	Fri Jun 17 11:35:35 2005 +0200
   134.2 +++ b/src/HOL/Bali/DefiniteAssignment.thy	Fri Jun 17 16:12:49 2005 +0200
   134.3 @@ -1,6 +1,6 @@
   134.4  header {* Definite Assignment *}
   134.5  
   134.6 -theory DefiniteAssignment = WellType: 
   134.7 +theory DefiniteAssignment imports WellType begin 
   134.8  
   134.9  text {* Definite Assignment Analysis (cf. 16)
  134.10  
   135.1 --- a/src/HOL/Bali/DefiniteAssignmentCorrect.thy	Fri Jun 17 11:35:35 2005 +0200
   135.2 +++ b/src/HOL/Bali/DefiniteAssignmentCorrect.thy	Fri Jun 17 16:12:49 2005 +0200
   135.3 @@ -1,6 +1,6 @@
   135.4  header {* Correctness of Definite Assignment *}
   135.5  
   135.6 -theory DefiniteAssignmentCorrect = WellForm + Eval:
   135.7 +theory DefiniteAssignmentCorrect imports WellForm Eval begin
   135.8  
   135.9  ML {*
  135.10  Delsimprocs [wt_expr_proc,wt_var_proc,wt_exprs_proc,wt_stmt_proc]
   136.1 --- a/src/HOL/Bali/Eval.thy	Fri Jun 17 11:35:35 2005 +0200
   136.2 +++ b/src/HOL/Bali/Eval.thy	Fri Jun 17 16:12:49 2005 +0200
   136.3 @@ -6,7 +6,7 @@
   136.4            statements
   136.5  *}
   136.6  
   136.7 -theory Eval = State + DeclConcepts:
   136.8 +theory Eval imports State DeclConcepts begin
   136.9  
  136.10  text {*
  136.11  
   137.1 --- a/src/HOL/Bali/Evaln.thy	Fri Jun 17 11:35:35 2005 +0200
   137.2 +++ b/src/HOL/Bali/Evaln.thy	Fri Jun 17 16:12:49 2005 +0200
   137.3 @@ -6,7 +6,7 @@
   137.4            statements
   137.5  *}
   137.6  
   137.7 -theory Evaln = TypeSafe:
   137.8 +theory Evaln imports TypeSafe begin
   137.9  
  137.10  
  137.11  text {*
   138.1 --- a/src/HOL/Bali/Example.thy	Fri Jun 17 11:35:35 2005 +0200
   138.2 +++ b/src/HOL/Bali/Example.thy	Fri Jun 17 16:12:49 2005 +0200
   138.3 @@ -4,7 +4,7 @@
   138.4  *)
   138.5  header {* Example Bali program *}
   138.6  
   138.7 -theory Example = Eval + WellForm:
   138.8 +theory Example imports Eval WellForm begin
   138.9  
  138.10  text {*
  138.11  The following example Bali program includes:
   139.1 --- a/src/HOL/Bali/Name.thy	Fri Jun 17 11:35:35 2005 +0200
   139.2 +++ b/src/HOL/Bali/Name.thy	Fri Jun 17 16:12:49 2005 +0200
   139.3 @@ -4,7 +4,7 @@
   139.4  *)
   139.5  header {* Java names *}
   139.6  
   139.7 -theory Name = Basis:
   139.8 +theory Name imports Basis begin
   139.9  
  139.10  (* cf. 6.5 *) 
  139.11  typedecl tnam	--{* ordinary type name, i.e. class or interface name *}
   140.1 --- a/src/HOL/Bali/State.thy	Fri Jun 17 11:35:35 2005 +0200
   140.2 +++ b/src/HOL/Bali/State.thy	Fri Jun 17 16:12:49 2005 +0200
   140.3 @@ -4,7 +4,7 @@
   140.4  *)
   140.5  header {* State for evaluation of Java expressions and statements *}
   140.6  
   140.7 -theory State = DeclConcepts:
   140.8 +theory State imports DeclConcepts begin
   140.9  
  140.10  text {*
  140.11  design issues:
   141.1 --- a/src/HOL/Bali/Table.thy	Fri Jun 17 11:35:35 2005 +0200
   141.2 +++ b/src/HOL/Bali/Table.thy	Fri Jun 17 16:12:49 2005 +0200
   141.3 @@ -4,7 +4,7 @@
   141.4  *)
   141.5  header {* Abstract tables and their implementation as lists *}
   141.6  
   141.7 -theory Table = Basis:
   141.8 +theory Table imports Basis begin
   141.9  
  141.10  text {*
  141.11  design issues:
   142.1 --- a/src/HOL/Bali/Term.thy	Fri Jun 17 11:35:35 2005 +0200
   142.2 +++ b/src/HOL/Bali/Term.thy	Fri Jun 17 16:12:49 2005 +0200
   142.3 @@ -5,7 +5,7 @@
   142.4  
   142.5  header {* Java expressions and statements *}
   142.6  
   142.7 -theory Term = Value + Table:
   142.8 +theory Term imports Value Table begin
   142.9  
  142.10  text {*
  142.11  design issues:
   143.1 --- a/src/HOL/Bali/Trans.thy	Fri Jun 17 11:35:35 2005 +0200
   143.2 +++ b/src/HOL/Bali/Trans.thy	Fri Jun 17 16:12:49 2005 +0200
   143.3 @@ -8,7 +8,7 @@
   143.4  PRELIMINARY!!!!!!!!
   143.5  *)
   143.6  
   143.7 -theory Trans = Evaln:
   143.8 +theory Trans imports Evaln begin
   143.9  
  143.10  constdefs groundVar:: "var \<Rightarrow> bool"
  143.11  "groundVar v \<equiv> (case v of
   144.1 --- a/src/HOL/Bali/Type.thy	Fri Jun 17 11:35:35 2005 +0200
   144.2 +++ b/src/HOL/Bali/Type.thy	Fri Jun 17 16:12:49 2005 +0200
   144.3 @@ -5,7 +5,7 @@
   144.4  
   144.5  header {* Java types *}
   144.6  
   144.7 -theory Type = Name:
   144.8 +theory Type imports Name begin
   144.9  
  144.10  text {*
  144.11  simplifications:
   145.1 --- a/src/HOL/Bali/TypeRel.thy	Fri Jun 17 11:35:35 2005 +0200
   145.2 +++ b/src/HOL/Bali/TypeRel.thy	Fri Jun 17 16:12:49 2005 +0200
   145.3 @@ -4,7 +4,7 @@
   145.4  *)
   145.5  header {* The relations between Java types *}
   145.6  
   145.7 -theory TypeRel = Decl:
   145.8 +theory TypeRel imports Decl begin
   145.9  
  145.10  text {*
  145.11  simplifications:
   146.1 --- a/src/HOL/Bali/TypeSafe.thy	Fri Jun 17 11:35:35 2005 +0200
   146.2 +++ b/src/HOL/Bali/TypeSafe.thy	Fri Jun 17 16:12:49 2005 +0200
   146.3 @@ -4,7 +4,7 @@
   146.4  *)
   146.5  header {* The type soundness proof for Java *}
   146.6  
   146.7 -theory TypeSafe = DefiniteAssignmentCorrect + Conform:
   146.8 +theory TypeSafe imports DefiniteAssignmentCorrect Conform begin
   146.9  
  146.10  section "error free"
  146.11   
   147.1 --- a/src/HOL/Bali/Value.thy	Fri Jun 17 11:35:35 2005 +0200
   147.2 +++ b/src/HOL/Bali/Value.thy	Fri Jun 17 16:12:49 2005 +0200
   147.3 @@ -6,7 +6,7 @@
   147.4  
   147.5  
   147.6  
   147.7 -theory Value = Type:
   147.8 +theory Value imports Type begin
   147.9  
  147.10  typedecl loc            --{* locations, i.e. abstract references on objects *}
  147.11  arities	 loc :: "type"
   148.1 --- a/src/HOL/Bali/WellForm.thy	Fri Jun 17 11:35:35 2005 +0200
   148.2 +++ b/src/HOL/Bali/WellForm.thy	Fri Jun 17 16:12:49 2005 +0200
   148.3 @@ -4,7 +4,7 @@
   148.4  *)
   148.5  
   148.6  header {* Well-formedness of Java programs *}
   148.7 -theory WellForm = DefiniteAssignment:
   148.8 +theory WellForm imports DefiniteAssignment begin
   148.9  
  148.10  text {*
  148.11  For static checks on expressions and statements, see WellType.thy
   149.1 --- a/src/HOL/Bali/WellType.thy	Fri Jun 17 11:35:35 2005 +0200
   149.2 +++ b/src/HOL/Bali/WellType.thy	Fri Jun 17 16:12:49 2005 +0200
   149.3 @@ -4,7 +4,7 @@
   149.4  *)
   149.5  header {* Well-typedness of Java programs *}
   149.6  
   149.7 -theory WellType = DeclConcepts:
   149.8 +theory WellType imports DeclConcepts begin
   149.9  
  149.10  text {*
  149.11  improvements over Java Specification 1.0:
   150.1 --- a/src/HOL/Extraction.thy	Fri Jun 17 11:35:35 2005 +0200
   150.2 +++ b/src/HOL/Extraction.thy	Fri Jun 17 16:12:49 2005 +0200
   150.3 @@ -7,7 +7,7 @@
   150.4  
   150.5  theory Extraction
   150.6  imports Datatype
   150.7 -files "Tools/rewrite_hol_proof.ML"
   150.8 +uses "Tools/rewrite_hol_proof.ML"
   150.9  begin
  150.10  
  150.11  subsection {* Setup *}
   151.1 --- a/src/HOL/Extraction/Higman.thy	Fri Jun 17 11:35:35 2005 +0200
   151.2 +++ b/src/HOL/Extraction/Higman.thy	Fri Jun 17 16:12:49 2005 +0200
   151.3 @@ -6,7 +6,7 @@
   151.4  
   151.5  header {* Higman's lemma *}
   151.6  
   151.7 -theory Higman = Main:
   151.8 +theory Higman imports Main begin
   151.9  
  151.10  text {*
  151.11    Formalization by Stefan Berghofer and Monika Seisenberger,
   152.1 --- a/src/HOL/Extraction/QuotRem.thy	Fri Jun 17 11:35:35 2005 +0200
   152.2 +++ b/src/HOL/Extraction/QuotRem.thy	Fri Jun 17 16:12:49 2005 +0200
   152.3 @@ -5,7 +5,7 @@
   152.4  
   152.5  header {* Quotient and remainder *}
   152.6  
   152.7 -theory QuotRem = Main:
   152.8 +theory QuotRem imports Main begin
   152.9  
  152.10  text {* Derivation of quotient and remainder using program extraction. *}
  152.11  
   153.1 --- a/src/HOL/Extraction/Warshall.thy	Fri Jun 17 11:35:35 2005 +0200
   153.2 +++ b/src/HOL/Extraction/Warshall.thy	Fri Jun 17 16:12:49 2005 +0200
   153.3 @@ -5,7 +5,7 @@
   153.4  
   153.5  header {* Warshall's algorithm *}
   153.6  
   153.7 -theory Warshall = Main:
   153.8 +theory Warshall imports Main begin
   153.9  
  153.10  text {*
  153.11    Derivation of Warshall's algorithm using program extraction,
   154.1 --- a/src/HOL/HOL.thy	Fri Jun 17 11:35:35 2005 +0200
   154.2 +++ b/src/HOL/HOL.thy	Fri Jun 17 16:12:49 2005 +0200
   154.3 @@ -7,7 +7,7 @@
   154.4  
   154.5  theory HOL
   154.6  imports CPure
   154.7 -files ("cladata.ML") ("blastdata.ML") ("simpdata.ML") ("eqrule_HOL_data.ML")
   154.8 +uses ("cladata.ML") ("blastdata.ML") ("simpdata.ML") ("eqrule_HOL_data.ML")
   154.9        ("~~/src/Provers/eqsubst.ML")
  154.10  begin
  154.11  
   155.1 --- a/src/HOL/Hilbert_Choice.thy	Fri Jun 17 11:35:35 2005 +0200
   155.2 +++ b/src/HOL/Hilbert_Choice.thy	Fri Jun 17 16:12:49 2005 +0200
   155.3 @@ -8,7 +8,7 @@
   155.4  
   155.5  theory Hilbert_Choice
   155.6  imports NatArith
   155.7 -files ("Tools/meson.ML") ("Tools/specification_package.ML")
   155.8 +uses ("Tools/meson.ML") ("Tools/specification_package.ML")
   155.9  begin
  155.10  
  155.11  subsection {* Hilbert's epsilon *}
   156.1 --- a/src/HOL/Hoare/Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   156.2 +++ b/src/HOL/Hoare/Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   156.3 @@ -6,7 +6,7 @@
   156.4  Various examples.
   156.5  *)
   156.6  
   156.7 -theory Examples = Hoare + Arith2:
   156.8 +theory Examples imports Hoare Arith2 begin
   156.9  
  156.10  (*** ARITHMETIC ***)
  156.11  
   157.1 --- a/src/HOL/Hoare/ExamplesAbort.thy	Fri Jun 17 11:35:35 2005 +0200
   157.2 +++ b/src/HOL/Hoare/ExamplesAbort.thy	Fri Jun 17 16:12:49 2005 +0200
   157.3 @@ -6,7 +6,7 @@
   157.4  Some small examples for programs that may abort.
   157.5  *)
   157.6  
   157.7 -theory ExamplesAbort = HoareAbort:
   157.8 +theory ExamplesAbort imports HoareAbort begin
   157.9  
  157.10  lemma "VARS x y z::nat
  157.11   {y = z & z \<noteq> 0} z \<noteq> 0 \<rightarrow> x := y div z {x = 1}"
   158.1 --- a/src/HOL/Hoare/Heap.thy	Fri Jun 17 11:35:35 2005 +0200
   158.2 +++ b/src/HOL/Hoare/Heap.thy	Fri Jun 17 16:12:49 2005 +0200
   158.3 @@ -7,7 +7,7 @@
   158.4  See the paper by Mehta and Nipkow.
   158.5  *)
   158.6  
   158.7 -theory Heap = Main:
   158.8 +theory Heap imports Main begin
   158.9  
  158.10  subsection "References"
  158.11  
   159.1 --- a/src/HOL/Hoare/HeapSyntax.thy	Fri Jun 17 11:35:35 2005 +0200
   159.2 +++ b/src/HOL/Hoare/HeapSyntax.thy	Fri Jun 17 16:12:49 2005 +0200
   159.3 @@ -4,7 +4,7 @@
   159.4      Copyright   2002 TUM
   159.5  *)
   159.6  
   159.7 -theory HeapSyntax = Hoare + Heap:
   159.8 +theory HeapSyntax imports Hoare Heap begin
   159.9  
  159.10  subsection "Field access and update"
  159.11  
   160.1 --- a/src/HOL/Hoare/HeapSyntaxAbort.thy	Fri Jun 17 11:35:35 2005 +0200
   160.2 +++ b/src/HOL/Hoare/HeapSyntaxAbort.thy	Fri Jun 17 16:12:49 2005 +0200
   160.3 @@ -4,7 +4,7 @@
   160.4      Copyright   2002 TUM
   160.5  *)
   160.6  
   160.7 -theory HeapSyntaxAbort = HoareAbort + Heap:
   160.8 +theory HeapSyntaxAbort imports HoareAbort Heap begin
   160.9  
  160.10  subsection "Field access and update"
  160.11  
   161.1 --- a/src/HOL/Hoare/Hoare.thy	Fri Jun 17 11:35:35 2005 +0200
   161.2 +++ b/src/HOL/Hoare/Hoare.thy	Fri Jun 17 16:12:49 2005 +0200
   161.3 @@ -9,8 +9,8 @@
   161.4  later.
   161.5  *)
   161.6  
   161.7 -theory Hoare  = Main
   161.8 -files ("hoare.ML"):
   161.9 +theory Hoare  imports Main
  161.10 +uses ("hoare.ML") begin
  161.11  
  161.12  types
  161.13      'a bexp = "'a set"
   162.1 --- a/src/HOL/Hoare/HoareAbort.thy	Fri Jun 17 11:35:35 2005 +0200
   162.2 +++ b/src/HOL/Hoare/HoareAbort.thy	Fri Jun 17 16:12:49 2005 +0200
   162.3 @@ -6,8 +6,8 @@
   162.4  Like Hoare.thy, but with an Abort statement for modelling run time errors.
   162.5  *)
   162.6  
   162.7 -theory HoareAbort  = Main
   162.8 -files ("hoareAbort.ML"):
   162.9 +theory HoareAbort  imports Main
  162.10 +uses ("hoareAbort.ML") begin
  162.11  
  162.12  types
  162.13      'a bexp = "'a set"
   163.1 --- a/src/HOL/Hoare/Pointer_Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   163.2 +++ b/src/HOL/Hoare/Pointer_Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   163.3 @@ -6,7 +6,7 @@
   163.4  Examples of verifications of pointer programs
   163.5  *)
   163.6  
   163.7 -theory Pointer_Examples = HeapSyntax:
   163.8 +theory Pointer_Examples imports HeapSyntax begin
   163.9  
  163.10  section "Verifications"
  163.11  
   164.1 --- a/src/HOL/Hoare/Pointer_ExamplesAbort.thy	Fri Jun 17 11:35:35 2005 +0200
   164.2 +++ b/src/HOL/Hoare/Pointer_ExamplesAbort.thy	Fri Jun 17 16:12:49 2005 +0200
   164.3 @@ -6,7 +6,7 @@
   164.4  Examples of verifications of pointer programs
   164.5  *)
   164.6  
   164.7 -theory Pointer_ExamplesAbort = HeapSyntaxAbort:
   164.8 +theory Pointer_ExamplesAbort imports HeapSyntaxAbort begin
   164.9  
  164.10  section "Verifications"
  164.11  
   165.1 --- a/src/HOL/Hoare/Pointers0.thy	Fri Jun 17 11:35:35 2005 +0200
   165.2 +++ b/src/HOL/Hoare/Pointers0.thy	Fri Jun 17 16:12:49 2005 +0200
   165.3 @@ -10,7 +10,7 @@
   165.4  - in fact in some case they appear to get (a bit) more complicated.
   165.5  *)
   165.6  
   165.7 -theory Pointers0 = Hoare:
   165.8 +theory Pointers0 imports Hoare begin
   165.9  
  165.10  subsection "References"
  165.11  
   166.1 --- a/src/HOL/Hoare/SchorrWaite.thy	Fri Jun 17 11:35:35 2005 +0200
   166.2 +++ b/src/HOL/Hoare/SchorrWaite.thy	Fri Jun 17 16:12:49 2005 +0200
   166.3 @@ -7,7 +7,7 @@
   166.4  *)
   166.5  
   166.6  
   166.7 -theory SchorrWaite = HeapSyntax:
   166.8 +theory SchorrWaite imports HeapSyntax begin
   166.9  
  166.10  section {* Machinery for the Schorr-Waite proof*}
  166.11  
   167.1 --- a/src/HOL/Hoare/SepLogHeap.thy	Fri Jun 17 11:35:35 2005 +0200
   167.2 +++ b/src/HOL/Hoare/SepLogHeap.thy	Fri Jun 17 16:12:49 2005 +0200
   167.3 @@ -7,7 +7,7 @@
   167.4  for Separation Logic.
   167.5  *)
   167.6  
   167.7 -theory SepLogHeap = Main:
   167.8 +theory SepLogHeap imports Main begin
   167.9  
  167.10  types heap = "(nat \<Rightarrow> nat option)"
  167.11  
   168.1 --- a/src/HOL/Hoare/Separation.thy	Fri Jun 17 11:35:35 2005 +0200
   168.2 +++ b/src/HOL/Hoare/Separation.thy	Fri Jun 17 16:12:49 2005 +0200
   168.3 @@ -13,7 +13,7 @@
   168.4  
   168.5  *)
   168.6  
   168.7 -theory Separation = HoareAbort + SepLogHeap:
   168.8 +theory Separation imports HoareAbort SepLogHeap begin
   168.9  
  168.10  text{* The semantic definition of a few connectives: *}
  168.11  
   169.1 --- a/src/HOL/HoareParallel/Gar_Coll.thy	Fri Jun 17 11:35:35 2005 +0200
   169.2 +++ b/src/HOL/HoareParallel/Gar_Coll.thy	Fri Jun 17 16:12:49 2005 +0200
   169.3 @@ -1,7 +1,7 @@
   169.4  
   169.5  header {* \section{The Single Mutator Case} *}
   169.6  
   169.7 -theory Gar_Coll = Graph + OG_Syntax:
   169.8 +theory Gar_Coll imports Graph OG_Syntax begin
   169.9  
  169.10  declare psubsetE [rule del]
  169.11  
   170.1 --- a/src/HOL/HoareParallel/Graph.thy	Fri Jun 17 11:35:35 2005 +0200
   170.2 +++ b/src/HOL/HoareParallel/Graph.thy	Fri Jun 17 16:12:49 2005 +0200
   170.3 @@ -3,7 +3,7 @@
   170.4  
   170.5  \section {Formalization of the Memory} *}
   170.6  
   170.7 -theory Graph = Main:
   170.8 +theory Graph imports Main begin
   170.9  
  170.10  datatype node = Black | White
  170.11  
   171.1 --- a/src/HOL/HoareParallel/Mul_Gar_Coll.thy	Fri Jun 17 11:35:35 2005 +0200
   171.2 +++ b/src/HOL/HoareParallel/Mul_Gar_Coll.thy	Fri Jun 17 16:12:49 2005 +0200
   171.3 @@ -1,7 +1,7 @@
   171.4  
   171.5  header {* \section{The Multi-Mutator Case} *}
   171.6  
   171.7 -theory Mul_Gar_Coll = Graph + OG_Syntax:
   171.8 +theory Mul_Gar_Coll imports Graph OG_Syntax begin
   171.9  
  171.10  text {*  The full theory takes aprox. 18 minutes.  *}
  171.11  
   172.1 --- a/src/HOL/HoareParallel/OG_Com.thy	Fri Jun 17 11:35:35 2005 +0200
   172.2 +++ b/src/HOL/HoareParallel/OG_Com.thy	Fri Jun 17 16:12:49 2005 +0200
   172.3 @@ -3,7 +3,7 @@
   172.4  
   172.5  \section{Abstract Syntax} *} 
   172.6  
   172.7 -theory OG_Com = Main:
   172.8 +theory OG_Com imports Main begin
   172.9  
  172.10  text {* Type abbreviations for boolean expressions and assertions: *}
  172.11  
   173.1 --- a/src/HOL/HoareParallel/OG_Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   173.2 +++ b/src/HOL/HoareParallel/OG_Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   173.3 @@ -1,7 +1,7 @@
   173.4  
   173.5  header {* \section{Examples} *}
   173.6  
   173.7 -theory OG_Examples = OG_Syntax:
   173.8 +theory OG_Examples imports OG_Syntax begin
   173.9  
  173.10  subsection {* Mutual Exclusion *}
  173.11  
   174.1 --- a/src/HOL/HoareParallel/OG_Hoare.thy	Fri Jun 17 11:35:35 2005 +0200
   174.2 +++ b/src/HOL/HoareParallel/OG_Hoare.thy	Fri Jun 17 16:12:49 2005 +0200
   174.3 @@ -1,7 +1,7 @@
   174.4  
   174.5  header {* \section{The Proof System} *}
   174.6  
   174.7 -theory OG_Hoare = OG_Tran:
   174.8 +theory OG_Hoare imports OG_Tran begin
   174.9  
  174.10  consts assertions :: "'a ann_com \<Rightarrow> ('a assn) set"
  174.11  primrec
   175.1 --- a/src/HOL/HoareParallel/OG_Tran.thy	Fri Jun 17 11:35:35 2005 +0200
   175.2 +++ b/src/HOL/HoareParallel/OG_Tran.thy	Fri Jun 17 16:12:49 2005 +0200
   175.3 @@ -1,7 +1,7 @@
   175.4  
   175.5  header {* \section{Operational Semantics} *}
   175.6  
   175.7 -theory OG_Tran = OG_Com:
   175.8 +theory OG_Tran imports OG_Com begin
   175.9  
  175.10  types
  175.11    'a ann_com_op = "('a ann_com) option"
   176.1 --- a/src/HOL/HoareParallel/Quote_Antiquote.thy	Fri Jun 17 11:35:35 2005 +0200
   176.2 +++ b/src/HOL/HoareParallel/Quote_Antiquote.thy	Fri Jun 17 16:12:49 2005 +0200
   176.3 @@ -1,7 +1,7 @@
   176.4  
   176.5  header {* \section{Concrete Syntax} *}
   176.6  
   176.7 -theory Quote_Antiquote = Main:
   176.8 +theory Quote_Antiquote imports Main begin
   176.9  
  176.10  syntax
  176.11    "_quote"     :: "'b \<Rightarrow> ('a \<Rightarrow> 'b)"                ("(\<guillemotleft>_\<guillemotright>)" [0] 1000)
   177.1 --- a/src/HOL/HoareParallel/RG_Com.thy	Fri Jun 17 11:35:35 2005 +0200
   177.2 +++ b/src/HOL/HoareParallel/RG_Com.thy	Fri Jun 17 16:12:49 2005 +0200
   177.3 @@ -4,7 +4,7 @@
   177.4  \section {Abstract Syntax}
   177.5  *}
   177.6  
   177.7 -theory RG_Com = Main:
   177.8 +theory RG_Com imports Main begin
   177.9  
  177.10  text {* Semantics of assertions and boolean expressions (bexp) as sets
  177.11  of states.  Syntax of commands @{text com} and parallel commands
   178.1 --- a/src/HOL/HoareParallel/RG_Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   178.2 +++ b/src/HOL/HoareParallel/RG_Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   178.3 @@ -1,6 +1,6 @@
   178.4  header {* \section{Examples} *}
   178.5  
   178.6 -theory RG_Examples = RG_Syntax:
   178.7 +theory RG_Examples imports RG_Syntax begin
   178.8  
   178.9  lemmas definitions [simp]= stable_def Pre_def Rely_def Guar_def Post_def Com_def 
  178.10  
   179.1 --- a/src/HOL/HoareParallel/RG_Hoare.thy	Fri Jun 17 11:35:35 2005 +0200
   179.2 +++ b/src/HOL/HoareParallel/RG_Hoare.thy	Fri Jun 17 16:12:49 2005 +0200
   179.3 @@ -1,6 +1,6 @@
   179.4  header {* \section{The Proof System} *}
   179.5  
   179.6 -theory RG_Hoare = RG_Tran:
   179.7 +theory RG_Hoare imports RG_Tran begin
   179.8  
   179.9  subsection {* Proof System for Component Programs *}
  179.10  
   180.1 --- a/src/HOL/Hyperreal/HyperArith.thy	Fri Jun 17 11:35:35 2005 +0200
   180.2 +++ b/src/HOL/Hyperreal/HyperArith.thy	Fri Jun 17 16:12:49 2005 +0200
   180.3 @@ -8,7 +8,7 @@
   180.4  
   180.5  theory HyperArith
   180.6  imports HyperDef
   180.7 -files ("hypreal_arith.ML")
   180.8 +uses ("hypreal_arith.ML")
   180.9  begin
  180.10  
  180.11  subsection{*Numerals and Arithmetic*}
   181.1 --- a/src/HOL/Hyperreal/HyperDef.thy	Fri Jun 17 11:35:35 2005 +0200
   181.2 +++ b/src/HOL/Hyperreal/HyperDef.thy	Fri Jun 17 16:12:49 2005 +0200
   181.3 @@ -9,7 +9,7 @@
   181.4  
   181.5  theory HyperDef
   181.6  imports Filter "../Real/Real"
   181.7 -files ("fuf.ML")  (*Warning: file fuf.ML refers to the name Hyperdef!*)
   181.8 +uses ("fuf.ML")  (*Warning: file fuf.ML refers to the name Hyperdef!*)
   181.9  begin
  181.10  
  181.11  constdefs
   182.1 --- a/src/HOL/IMP/Com.thy	Fri Jun 17 11:35:35 2005 +0200
   182.2 +++ b/src/HOL/IMP/Com.thy	Fri Jun 17 16:12:49 2005 +0200
   182.3 @@ -7,7 +7,7 @@
   182.4  
   182.5  header "Syntax of Commands"
   182.6  
   182.7 -theory Com = Main:
   182.8 +theory Com imports Main begin
   182.9  
  182.10  typedecl loc 
  182.11    -- "an unspecified (arbitrary) type of locations 
   183.1 --- a/src/HOL/IMP/Compiler.thy	Fri Jun 17 11:35:35 2005 +0200
   183.2 +++ b/src/HOL/IMP/Compiler.thy	Fri Jun 17 16:12:49 2005 +0200
   183.3 @@ -4,7 +4,7 @@
   183.4      Copyright   1996 TUM
   183.5  *)
   183.6  
   183.7 -theory Compiler = Machines:
   183.8 +theory Compiler imports Machines begin
   183.9  
  183.10  subsection "The compiler"
  183.11  
   184.1 --- a/src/HOL/IMP/Compiler0.thy	Fri Jun 17 11:35:35 2005 +0200
   184.2 +++ b/src/HOL/IMP/Compiler0.thy	Fri Jun 17 16:12:49 2005 +0200
   184.3 @@ -10,7 +10,7 @@
   184.4  
   184.5  header "A Simple Compiler"
   184.6  
   184.7 -theory Compiler0 = Natural:
   184.8 +theory Compiler0 imports Natural begin
   184.9  
  184.10  subsection "An abstract, simplistic machine"
  184.11  
   185.1 --- a/src/HOL/IMP/Denotation.thy	Fri Jun 17 11:35:35 2005 +0200
   185.2 +++ b/src/HOL/IMP/Denotation.thy	Fri Jun 17 16:12:49 2005 +0200
   185.3 @@ -6,7 +6,7 @@
   185.4  
   185.5  header "Denotational Semantics of Commands"
   185.6  
   185.7 -theory Denotation = Natural:
   185.8 +theory Denotation imports Natural begin
   185.9  
  185.10  types com_den = "(state\<times>state)set"
  185.11  
   186.1 --- a/src/HOL/IMP/Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   186.2 +++ b/src/HOL/IMP/Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   186.3 @@ -6,7 +6,7 @@
   186.4  
   186.5  header "Examples"
   186.6  
   186.7 -theory Examples = Natural:
   186.8 +theory Examples imports Natural begin
   186.9  
  186.10  constdefs  
  186.11    factorial :: "loc => loc => com"
   187.1 --- a/src/HOL/IMP/Expr.thy	Fri Jun 17 11:35:35 2005 +0200
   187.2 +++ b/src/HOL/IMP/Expr.thy	Fri Jun 17 16:12:49 2005 +0200
   187.3 @@ -6,7 +6,7 @@
   187.4  
   187.5  header "Expressions"
   187.6  
   187.7 -theory Expr = Main:
   187.8 +theory Expr imports Main begin
   187.9  
  187.10  text {*
  187.11    Arithmetic expressions and Boolean expressions.
   188.1 --- a/src/HOL/IMP/Hoare.thy	Fri Jun 17 11:35:35 2005 +0200
   188.2 +++ b/src/HOL/IMP/Hoare.thy	Fri Jun 17 16:12:49 2005 +0200
   188.3 @@ -6,7 +6,7 @@
   188.4  
   188.5  header "Inductive Definition of Hoare Logic"
   188.6  
   188.7 -theory Hoare = Denotation:
   188.8 +theory Hoare imports Denotation begin
   188.9  
  188.10  types assn = "state => bool"
  188.11  
   189.1 --- a/src/HOL/IMP/Machines.thy	Fri Jun 17 11:35:35 2005 +0200
   189.2 +++ b/src/HOL/IMP/Machines.thy	Fri Jun 17 16:12:49 2005 +0200
   189.3 @@ -1,4 +1,4 @@
   189.4 -theory Machines = Natural:
   189.5 +theory Machines imports Natural begin
   189.6  
   189.7  lemma rtrancl_eq: "R^* = Id \<union> (R O R^*)"
   189.8  by(fast intro:rtrancl.intros elim:rtranclE)
   190.1 --- a/src/HOL/IMP/Natural.thy	Fri Jun 17 11:35:35 2005 +0200
   190.2 +++ b/src/HOL/IMP/Natural.thy	Fri Jun 17 16:12:49 2005 +0200
   190.3 @@ -7,7 +7,7 @@
   190.4  
   190.5  header "Natural Semantics of Commands"
   190.6  
   190.7 -theory Natural = Com:
   190.8 +theory Natural imports Com begin
   190.9  
  190.10  subsection "Execution of commands"
  190.11  
   191.1 --- a/src/HOL/IMP/Transition.thy	Fri Jun 17 11:35:35 2005 +0200
   191.2 +++ b/src/HOL/IMP/Transition.thy	Fri Jun 17 16:12:49 2005 +0200
   191.3 @@ -7,7 +7,7 @@
   191.4  
   191.5  header "Transition Semantics of Commands"
   191.6  
   191.7 -theory Transition = Natural:
   191.8 +theory Transition imports Natural begin
   191.9  
  191.10  subsection "The transition relation"
  191.11  
   192.1 --- a/src/HOL/IMP/VC.thy	Fri Jun 17 11:35:35 2005 +0200
   192.2 +++ b/src/HOL/IMP/VC.thy	Fri Jun 17 16:12:49 2005 +0200
   192.3 @@ -10,7 +10,7 @@
   192.4  
   192.5  header "Verification Conditions"
   192.6  
   192.7 -theory VC = Hoare:
   192.8 +theory VC imports Hoare begin
   192.9  
  192.10  datatype  acom = Askip
  192.11                 | Aass   loc aexp
   193.1 --- a/src/HOL/Import/Generate-HOL/GenHOL4Base.thy	Fri Jun 17 11:35:35 2005 +0200
   193.2 +++ b/src/HOL/Import/Generate-HOL/GenHOL4Base.thy	Fri Jun 17 16:12:49 2005 +0200
   193.3 @@ -3,7 +3,7 @@
   193.4      Author:     Sebastian Skalberg (TU Muenchen)
   193.5  *)
   193.6  
   193.7 -theory GenHOL4Base = "../HOL4Compat" + "../HOL4Syntax":;
   193.8 +theory GenHOL4Base imports "../HOL4Compat" "../HOL4Syntax" begin;
   193.9  
  193.10  import_segment "hol4";
  193.11  
   194.1 --- a/src/HOL/Import/Generate-HOL/GenHOL4Prob.thy	Fri Jun 17 11:35:35 2005 +0200
   194.2 +++ b/src/HOL/Import/Generate-HOL/GenHOL4Prob.thy	Fri Jun 17 16:12:49 2005 +0200
   194.3 @@ -3,7 +3,7 @@
   194.4      Author:     Sebastian Skalberg (TU Muenchen)
   194.5  *)
   194.6  
   194.7 -theory GenHOL4Prob = GenHOL4Real:
   194.8 +theory GenHOL4Prob imports GenHOL4Real begin
   194.9  
  194.10  import_segment "hol4";
  194.11  
   195.1 --- a/src/HOL/Import/Generate-HOL/GenHOL4Real.thy	Fri Jun 17 11:35:35 2005 +0200
   195.2 +++ b/src/HOL/Import/Generate-HOL/GenHOL4Real.thy	Fri Jun 17 16:12:49 2005 +0200
   195.3 @@ -3,7 +3,7 @@
   195.4      Author:     Sebastian Skalberg (TU Muenchen)
   195.5  *)
   195.6  
   195.7 -theory GenHOL4Real = GenHOL4Base:
   195.8 +theory GenHOL4Real imports GenHOL4Base begin
   195.9  
  195.10  import_segment "hol4";
  195.11  
   196.1 --- a/src/HOL/Import/Generate-HOL/GenHOL4Vec.thy	Fri Jun 17 11:35:35 2005 +0200
   196.2 +++ b/src/HOL/Import/Generate-HOL/GenHOL4Vec.thy	Fri Jun 17 16:12:49 2005 +0200
   196.3 @@ -3,7 +3,7 @@
   196.4      Author:     Sebastian Skalberg (TU Muenchen)
   196.5  *)
   196.6  
   196.7 -theory GenHOL4Vec = GenHOL4Base:
   196.8 +theory GenHOL4Vec imports GenHOL4Base begin
   196.9  
  196.10  import_segment "hol4";
  196.11  
   197.1 --- a/src/HOL/Import/Generate-HOL/GenHOL4Word32.thy	Fri Jun 17 11:35:35 2005 +0200
   197.2 +++ b/src/HOL/Import/Generate-HOL/GenHOL4Word32.thy	Fri Jun 17 16:12:49 2005 +0200
   197.3 @@ -3,7 +3,7 @@
   197.4      Author:     Sebastian Skalberg (TU Muenchen)
   197.5  *)
   197.6  
   197.7 -theory GenHOL4Word32 = GenHOL4Base:;
   197.8 +theory GenHOL4Word32 imports GenHOL4Base begin;
   197.9  
  197.10  import_segment "hol4";
  197.11  
   198.1 --- a/src/HOL/Import/HOL/HOL4.thy	Fri Jun 17 11:35:35 2005 +0200
   198.2 +++ b/src/HOL/Import/HOL/HOL4.thy	Fri Jun 17 16:12:49 2005 +0200
   198.3 @@ -3,6 +3,6 @@
   198.4      Author:     Sebastian Skalberg (TU Muenchen)
   198.5  *)
   198.6  
   198.7 -theory HOL4 = HOL4Vec + HOL4Word32 + HOL4Real:
   198.8 +theory HOL4 imports HOL4Vec HOL4Word32 HOL4Real begin
   198.9  
  198.10  end
   199.1 --- a/src/HOL/Import/HOL/HOL4Base.thy	Fri Jun 17 11:35:35 2005 +0200
   199.2 +++ b/src/HOL/Import/HOL/HOL4Base.thy	Fri Jun 17 16:12:49 2005 +0200
   199.3 @@ -1,6 +1,6 @@
   199.4  (* AUTOMATICALLY GENERATED, DO NOT EDIT! *)
   199.5  
   199.6 -theory HOL4Base = "../HOL4Compat" + "../HOL4Syntax":
   199.7 +theory HOL4Base imports "../HOL4Compat" "../HOL4Syntax" begin
   199.8  
   199.9  ;setup_theory bool
  199.10  
   200.1 --- a/src/HOL/Import/HOL/HOL4Prob.thy	Fri Jun 17 11:35:35 2005 +0200
   200.2 +++ b/src/HOL/Import/HOL/HOL4Prob.thy	Fri Jun 17 16:12:49 2005 +0200
   200.3 @@ -1,6 +1,6 @@
   200.4  (* AUTOMATICALLY GENERATED, DO NOT EDIT! *)
   200.5  
   200.6 -theory HOL4Prob = HOL4Real:
   200.7 +theory HOL4Prob imports HOL4Real begin
   200.8  
   200.9  ;setup_theory prob_extra
  200.10  
   201.1 --- a/src/HOL/Import/HOL/HOL4Real.thy	Fri Jun 17 11:35:35 2005 +0200
   201.2 +++ b/src/HOL/Import/HOL/HOL4Real.thy	Fri Jun 17 16:12:49 2005 +0200
   201.3 @@ -1,6 +1,6 @@
   201.4  (* AUTOMATICALLY GENERATED, DO NOT EDIT! *)
   201.5  
   201.6 -theory HOL4Real = HOL4Base:
   201.7 +theory HOL4Real imports HOL4Base begin
   201.8  
   201.9  ;setup_theory realax
  201.10  
   202.1 --- a/src/HOL/Import/HOL/HOL4Vec.thy	Fri Jun 17 11:35:35 2005 +0200
   202.2 +++ b/src/HOL/Import/HOL/HOL4Vec.thy	Fri Jun 17 16:12:49 2005 +0200
   202.3 @@ -1,6 +1,6 @@
   202.4  (* AUTOMATICALLY GENERATED, DO NOT EDIT! *)
   202.5  
   202.6 -theory HOL4Vec = HOL4Base:
   202.7 +theory HOL4Vec imports HOL4Base begin
   202.8  
   202.9  ;setup_theory res_quan
  202.10  
   203.1 --- a/src/HOL/Import/HOL/HOL4Word32.thy	Fri Jun 17 11:35:35 2005 +0200
   203.2 +++ b/src/HOL/Import/HOL/HOL4Word32.thy	Fri Jun 17 16:12:49 2005 +0200
   203.3 @@ -1,6 +1,6 @@
   203.4  (* AUTOMATICALLY GENERATED, DO NOT EDIT! *)
   203.5  
   203.6 -theory HOL4Word32 = HOL4Base:
   203.7 +theory HOL4Word32 imports HOL4Base begin
   203.8  
   203.9  ;setup_theory bits
  203.10  
   204.1 --- a/src/HOL/Import/HOL4Compat.thy	Fri Jun 17 11:35:35 2005 +0200
   204.2 +++ b/src/HOL/Import/HOL4Compat.thy	Fri Jun 17 16:12:49 2005 +0200
   204.3 @@ -3,7 +3,7 @@
   204.4      Author:     Sebastian Skalberg (TU Muenchen)
   204.5  *)
   204.6  
   204.7 -theory HOL4Compat = HOL4Setup + Divides + Primes + Real:
   204.8 +theory HOL4Compat imports HOL4Setup Divides Primes Real begin
   204.9  
  204.10  lemma EXISTS_UNIQUE_DEF: "(Ex1 P) = (Ex P & (ALL x y. P x & P y --> (x = y)))"
  204.11    by auto
   205.1 --- a/src/HOL/Import/HOL4Setup.thy	Fri Jun 17 11:35:35 2005 +0200
   205.2 +++ b/src/HOL/Import/HOL4Setup.thy	Fri Jun 17 16:12:49 2005 +0200
   205.3 @@ -3,8 +3,8 @@
   205.4      Author:     Sebastian Skalberg (TU Muenchen)
   205.5  *)
   205.6  
   205.7 -theory HOL4Setup = MakeEqual
   205.8 -  files ("proof_kernel.ML") ("replay.ML") ("hol4rews.ML") ("import_package.ML"):
   205.9 +theory HOL4Setup imports MakeEqual
  205.10 +  uses ("proof_kernel.ML") ("replay.ML") ("hol4rews.ML") ("import_package.ML") begin
  205.11  
  205.12  section {* General Setup *}
  205.13  
   206.1 --- a/src/HOL/Import/HOL4Syntax.thy	Fri Jun 17 11:35:35 2005 +0200
   206.2 +++ b/src/HOL/Import/HOL4Syntax.thy	Fri Jun 17 16:12:49 2005 +0200
   206.3 @@ -3,8 +3,8 @@
   206.4      Author:     Sebastian Skalberg (TU Muenchen)
   206.5  *)
   206.6  
   206.7 -theory HOL4Syntax = HOL4Setup
   206.8 -  files "import_syntax.ML":
   206.9 +theory HOL4Syntax imports HOL4Setup
  206.10 +  uses "import_syntax.ML" begin
  206.11  
  206.12  ML {* HOL4ImportSyntax.setup() *}
  206.13  
   207.1 --- a/src/HOL/Import/MakeEqual.thy	Fri Jun 17 11:35:35 2005 +0200
   207.2 +++ b/src/HOL/Import/MakeEqual.thy	Fri Jun 17 16:12:49 2005 +0200
   207.3 @@ -3,8 +3,8 @@
   207.4      Author:     Sebastian Skalberg (TU Muenchen)
   207.5  *)
   207.6  
   207.7 -theory MakeEqual = Main
   207.8 -  files "shuffler.ML":
   207.9 +theory MakeEqual imports Main
  207.10 +  uses "shuffler.ML" begin
  207.11  
  207.12  setup Shuffler.setup
  207.13  
   208.1 --- a/src/HOL/Induct/ABexp.thy	Fri Jun 17 11:35:35 2005 +0200
   208.2 +++ b/src/HOL/Induct/ABexp.thy	Fri Jun 17 16:12:49 2005 +0200
   208.3 @@ -5,7 +5,7 @@
   208.4  
   208.5  header {* Arithmetic and boolean expressions *}
   208.6  
   208.7 -theory ABexp = Main:
   208.8 +theory ABexp imports Main begin
   208.9  
  208.10  datatype 'a aexp =
  208.11      IF "'a bexp"  "'a aexp"  "'a aexp"
   209.1 --- a/src/HOL/Induct/Com.thy	Fri Jun 17 11:35:35 2005 +0200
   209.2 +++ b/src/HOL/Induct/Com.thy	Fri Jun 17 16:12:49 2005 +0200
   209.3 @@ -8,7 +8,7 @@
   209.4  
   209.5  header{*Mutual Induction via Iteratived Inductive Definitions*}
   209.6  
   209.7 -theory Com = Main:
   209.8 +theory Com imports Main begin
   209.9  
  209.10  typedecl loc
  209.11  
   210.1 --- a/src/HOL/Induct/Comb.thy	Fri Jun 17 11:35:35 2005 +0200
   210.2 +++ b/src/HOL/Induct/Comb.thy	Fri Jun 17 16:12:49 2005 +0200
   210.3 @@ -6,7 +6,7 @@
   210.4  
   210.5  header {* Combinatory Logic example: the Church-Rosser Theorem *}
   210.6  
   210.7 -theory Comb = Main:
   210.8 +theory Comb imports Main begin
   210.9  
  210.10  text {*
  210.11    Curiously, combinators do not include free variables.
   211.1 --- a/src/HOL/Induct/LFilter.thy	Fri Jun 17 11:35:35 2005 +0200
   211.2 +++ b/src/HOL/Induct/LFilter.thy	Fri Jun 17 16:12:49 2005 +0200
   211.3 @@ -7,7 +7,7 @@
   211.4  header {*The "filter" functional for coinductive lists
   211.5    --defined by a combination of induction and coinduction*}
   211.6  
   211.7 -theory LFilter = LList:
   211.8 +theory LFilter imports LList begin
   211.9  
  211.10  consts
  211.11    findRel	:: "('a => bool) => ('a llist * 'a llist)set"
   212.1 --- a/src/HOL/Induct/LList.thy	Fri Jun 17 11:35:35 2005 +0200
   212.2 +++ b/src/HOL/Induct/LList.thy	Fri Jun 17 16:12:49 2005 +0200
   212.3 @@ -22,7 +22,7 @@
   212.4  
   212.5  header {*Definition of type llist by a greatest fixed point*}
   212.6  
   212.7 -theory LList = Main + SList:
   212.8 +theory LList imports Main SList begin
   212.9  
  212.10  consts
  212.11  
   213.1 --- a/src/HOL/Induct/Mutil.thy	Fri Jun 17 11:35:35 2005 +0200
   213.2 +++ b/src/HOL/Induct/Mutil.thy	Fri Jun 17 16:12:49 2005 +0200
   213.3 @@ -6,7 +6,7 @@
   213.4  
   213.5  header {* The Mutilated Chess Board Problem *}
   213.6  
   213.7 -theory Mutil = Main:
   213.8 +theory Mutil imports Main begin
   213.9  
  213.10  text {*
  213.11    The Mutilated Chess Board Problem, formalized inductively.
   214.1 --- a/src/HOL/Induct/Ordinals.thy	Fri Jun 17 11:35:35 2005 +0200
   214.2 +++ b/src/HOL/Induct/Ordinals.thy	Fri Jun 17 16:12:49 2005 +0200
   214.3 @@ -5,7 +5,7 @@
   214.4  
   214.5  header {* Ordinals *}
   214.6  
   214.7 -theory Ordinals = Main:
   214.8 +theory Ordinals imports Main begin
   214.9  
  214.10  text {*
  214.11    Some basic definitions of ordinal numbers.  Draws an Agda
   215.1 --- a/src/HOL/Induct/PropLog.thy	Fri Jun 17 11:35:35 2005 +0200
   215.2 +++ b/src/HOL/Induct/PropLog.thy	Fri Jun 17 16:12:49 2005 +0200
   215.3 @@ -6,7 +6,7 @@
   215.4  
   215.5  header {* Meta-theory of propositional logic *}
   215.6  
   215.7 -theory PropLog = Main:
   215.8 +theory PropLog imports Main begin
   215.9  
  215.10  text {*
  215.11    Datatype definition of propositional logic formulae and inductive
   216.1 --- a/src/HOL/Induct/QuoDataType.thy	Fri Jun 17 11:35:35 2005 +0200
   216.2 +++ b/src/HOL/Induct/QuoDataType.thy	Fri Jun 17 16:12:49 2005 +0200
   216.3 @@ -7,7 +7,7 @@
   216.4  
   216.5  header{*Defining an Initial Algebra by Quotienting a Free Algebra*}
   216.6  
   216.7 -theory QuoDataType = Main:
   216.8 +theory QuoDataType imports Main begin
   216.9  
  216.10  subsection{*Defining the Free Algebra*}
  216.11  
   217.1 --- a/src/HOL/Induct/QuoNestedDataType.thy	Fri Jun 17 11:35:35 2005 +0200
   217.2 +++ b/src/HOL/Induct/QuoNestedDataType.thy	Fri Jun 17 16:12:49 2005 +0200
   217.3 @@ -7,7 +7,7 @@
   217.4  
   217.5  header{*Quotienting a Free Algebra Involving Nested Recursion*}
   217.6  
   217.7 -theory QuoNestedDataType = Main:
   217.8 +theory QuoNestedDataType imports Main begin
   217.9  
  217.10  subsection{*Defining the Free Algebra*}
  217.11  
   218.1 --- a/src/HOL/Induct/SList.thy	Fri Jun 17 11:35:35 2005 +0200
   218.2 +++ b/src/HOL/Induct/SList.thy	Fri Jun 17 16:12:49 2005 +0200
   218.3 @@ -24,7 +24,7 @@
   218.4  Tidied by lcp.  Still needs removal of nat_rec.
   218.5  *)
   218.6  
   218.7 -theory SList = NatArith + Sexp + Hilbert_Choice:
   218.8 +theory SList imports NatArith Sexp Hilbert_Choice begin
   218.9  
  218.10  (*Hilbert_Choice is needed for the function "inv"*)
  218.11  
   219.1 --- a/src/HOL/Induct/Sexp.thy	Fri Jun 17 11:35:35 2005 +0200
   219.2 +++ b/src/HOL/Induct/Sexp.thy	Fri Jun 17 16:12:49 2005 +0200
   219.3 @@ -7,7 +7,7 @@
   219.4  structures by hand.
   219.5  *)
   219.6  
   219.7 -theory Sexp = Datatype_Universe + Inductive:
   219.8 +theory Sexp imports Datatype_Universe Inductive begin
   219.9  consts
  219.10    sexp      :: "'a item set"
  219.11  
   220.1 --- a/src/HOL/Induct/Sigma_Algebra.thy	Fri Jun 17 11:35:35 2005 +0200
   220.2 +++ b/src/HOL/Induct/Sigma_Algebra.thy	Fri Jun 17 16:12:49 2005 +0200
   220.3 @@ -5,7 +5,7 @@
   220.4  
   220.5  header {* Sigma algebras *}
   220.6  
   220.7 -theory Sigma_Algebra = Main:
   220.8 +theory Sigma_Algebra imports Main begin
   220.9  
  220.10  text {*
  220.11    This is just a tiny example demonstrating the use of inductive
   221.1 --- a/src/HOL/Induct/Term.thy	Fri Jun 17 11:35:35 2005 +0200
   221.2 +++ b/src/HOL/Induct/Term.thy	Fri Jun 17 16:12:49 2005 +0200
   221.3 @@ -5,7 +5,7 @@
   221.4  
   221.5  header {* Terms over a given alphabet *}
   221.6  
   221.7 -theory Term = Main:
   221.8 +theory Term imports Main begin
   221.9  
  221.10  datatype ('a, 'b) "term" =
  221.11      Var 'a
   222.1 --- a/src/HOL/Induct/Tree.thy	Fri Jun 17 11:35:35 2005 +0200
   222.2 +++ b/src/HOL/Induct/Tree.thy	Fri Jun 17 16:12:49 2005 +0200
   222.3 @@ -6,7 +6,7 @@
   222.4  
   222.5  header {* Infinitely branching trees *}
   222.6  
   222.7 -theory Tree = Main:
   222.8 +theory Tree imports Main begin
   222.9  
  222.10  datatype 'a tree =
  222.11      Atom 'a
   223.1 --- a/src/HOL/Inductive.thy	Fri Jun 17 11:35:35 2005 +0200
   223.2 +++ b/src/HOL/Inductive.thy	Fri Jun 17 16:12:49 2005 +0200
   223.3 @@ -7,7 +7,7 @@
   223.4  
   223.5  theory Inductive 
   223.6  imports Gfp Sum_Type Relation Record
   223.7 -files
   223.8 +uses
   223.9    ("Tools/inductive_package.ML")
  223.10    ("Tools/inductive_realizer.ML")
  223.11    ("Tools/inductive_codegen.ML")
   224.1 --- a/src/HOL/Integ/IntArith.thy	Fri Jun 17 11:35:35 2005 +0200
   224.2 +++ b/src/HOL/Integ/IntArith.thy	Fri Jun 17 16:12:49 2005 +0200
   224.3 @@ -7,7 +7,7 @@
   224.4  
   224.5  theory IntArith
   224.6  imports Numeral
   224.7 -files ("int_arith1.ML")
   224.8 +uses ("int_arith1.ML")
   224.9  begin
  224.10  
  224.11  text{*Duplicate: can't understand why it's necessary*}
   225.1 --- a/src/HOL/Integ/IntDiv.thy	Fri Jun 17 11:35:35 2005 +0200
   225.2 +++ b/src/HOL/Integ/IntDiv.thy	Fri Jun 17 16:12:49 2005 +0200
   225.3 @@ -10,7 +10,7 @@
   225.4  
   225.5  theory IntDiv
   225.6  imports IntArith Recdef
   225.7 -files ("IntDiv_setup.ML")
   225.8 +uses ("IntDiv_setup.ML")
   225.9  begin
  225.10  
  225.11  declare zless_nat_conj [simp]
   226.1 --- a/src/HOL/Integ/NatSimprocs.thy	Fri Jun 17 11:35:35 2005 +0200
   226.2 +++ b/src/HOL/Integ/NatSimprocs.thy	Fri Jun 17 16:12:49 2005 +0200
   226.3 @@ -7,7 +7,7 @@
   226.4  
   226.5  theory NatSimprocs
   226.6  imports NatBin
   226.7 -files "int_factor_simprocs.ML" "nat_simprocs.ML"
   226.8 +uses "int_factor_simprocs.ML" "nat_simprocs.ML"
   226.9  begin
  226.10  
  226.11  setup nat_simprocs_setup
   227.1 --- a/src/HOL/Integ/Numeral.thy	Fri Jun 17 11:35:35 2005 +0200
   227.2 +++ b/src/HOL/Integ/Numeral.thy	Fri Jun 17 16:12:49 2005 +0200
   227.3 @@ -8,7 +8,7 @@
   227.4  
   227.5  theory Numeral
   227.6  imports IntDef Datatype
   227.7 -files "../Tools/numeral_syntax.ML"
   227.8 +uses "../Tools/numeral_syntax.ML"
   227.9  begin
  227.10  
  227.11  text{* The file @{text numeral_syntax.ML} hides the constructors Pls and Min.
   228.1 --- a/src/HOL/Integ/Presburger.thy	Fri Jun 17 11:35:35 2005 +0200
   228.2 +++ b/src/HOL/Integ/Presburger.thy	Fri Jun 17 16:12:49 2005 +0200
   228.3 @@ -10,7 +10,7 @@
   228.4  
   228.5  theory Presburger
   228.6  imports NatSimprocs SetInterval
   228.7 -files ("cooper_dec.ML") ("cooper_proof.ML") ("qelim.ML") ("presburger.ML")
   228.8 +uses ("cooper_dec.ML") ("cooper_proof.ML") ("qelim.ML") ("presburger.ML")
   228.9  begin
  228.10  
  228.11  text {* Theorem for unitifying the coeffitients of @{text x} in an existential formula*}
   229.1 --- a/src/HOL/Isar_examples/BasicLogic.thy	Fri Jun 17 11:35:35 2005 +0200
   229.2 +++ b/src/HOL/Isar_examples/BasicLogic.thy	Fri Jun 17 16:12:49 2005 +0200
   229.3 @@ -7,7 +7,7 @@
   229.4  
   229.5  header {* Basic logical reasoning *}
   229.6  
   229.7 -theory BasicLogic = Main:
   229.8 +theory BasicLogic imports Main begin
   229.9  
  229.10  
  229.11  subsection {* Pure backward reasoning *}
   230.1 --- a/src/HOL/Isar_examples/Cantor.thy	Fri Jun 17 11:35:35 2005 +0200
   230.2 +++ b/src/HOL/Isar_examples/Cantor.thy	Fri Jun 17 16:12:49 2005 +0200
   230.3 @@ -5,7 +5,7 @@
   230.4  
   230.5  header {* Cantor's Theorem *}
   230.6  
   230.7 -theory Cantor = Main:
   230.8 +theory Cantor imports Main begin
   230.9  
  230.10  text_raw {*
  230.11    \footnote{This is an Isar version of the final example of the
   231.1 --- a/src/HOL/Isar_examples/Drinker.thy	Fri Jun 17 11:35:35 2005 +0200
   231.2 +++ b/src/HOL/Isar_examples/Drinker.thy	Fri Jun 17 16:12:49 2005 +0200
   231.3 @@ -5,7 +5,7 @@
   231.4  
   231.5  header {* The Drinker's Principle *}
   231.6  
   231.7 -theory Drinker = Main:
   231.8 +theory Drinker imports Main begin
   231.9  
  231.10  text {*
  231.11   Two parts of de-Morgan's law -- one intuitionistic and one classical:
   232.1 --- a/src/HOL/Isar_examples/ExprCompiler.thy	Fri Jun 17 11:35:35 2005 +0200
   232.2 +++ b/src/HOL/Isar_examples/ExprCompiler.thy	Fri Jun 17 16:12:49 2005 +0200
   232.3 @@ -7,7 +7,7 @@
   232.4  
   232.5  header {* Correctness of a simple expression compiler *}
   232.6  
   232.7 -theory ExprCompiler = Main:
   232.8 +theory ExprCompiler imports Main begin
   232.9  
  232.10  text {*
  232.11   This is a (rather trivial) example of program verification.  We model
   233.1 --- a/src/HOL/Isar_examples/Fibonacci.thy	Fri Jun 17 11:35:35 2005 +0200
   233.2 +++ b/src/HOL/Isar_examples/Fibonacci.thy	Fri Jun 17 16:12:49 2005 +0200
   233.3 @@ -15,7 +15,7 @@
   233.4  
   233.5  header {* Fib and Gcd commute *}
   233.6  
   233.7 -theory Fibonacci = Primes:
   233.8 +theory Fibonacci imports Primes begin
   233.9  
  233.10  text_raw {*
  233.11   \footnote{Isar version by Gertrud Bauer.  Original tactic script by
   234.1 --- a/src/HOL/Isar_examples/Group.thy	Fri Jun 17 11:35:35 2005 +0200
   234.2 +++ b/src/HOL/Isar_examples/Group.thy	Fri Jun 17 16:12:49 2005 +0200
   234.3 @@ -5,7 +5,7 @@
   234.4  
   234.5  header {* Basic group theory *}
   234.6  
   234.7 -theory Group = Main:
   234.8 +theory Group imports Main begin
   234.9  
  234.10  subsection {* Groups and calculational reasoning *} 
  234.11  
   235.1 --- a/src/HOL/Isar_examples/Hoare.thy	Fri Jun 17 11:35:35 2005 +0200
   235.2 +++ b/src/HOL/Isar_examples/Hoare.thy	Fri Jun 17 16:12:49 2005 +0200
   235.3 @@ -7,8 +7,8 @@
   235.4  
   235.5  header {* Hoare Logic *}
   235.6  
   235.7 -theory Hoare = Main
   235.8 -files ("~~/src/HOL/Hoare/hoare.ML"):
   235.9 +theory Hoare imports Main
  235.10 +uses ("~~/src/HOL/Hoare/hoare.ML") begin
  235.11  
  235.12  subsection {* Abstract syntax and semantics *}
  235.13  
   236.1 --- a/src/HOL/Isar_examples/HoareEx.thy	Fri Jun 17 11:35:35 2005 +0200
   236.2 +++ b/src/HOL/Isar_examples/HoareEx.thy	Fri Jun 17 16:12:49 2005 +0200
   236.3 @@ -1,7 +1,7 @@
   236.4  
   236.5  header {* Using Hoare Logic *}
   236.6  
   236.7 -theory HoareEx = Hoare:
   236.8 +theory HoareEx imports Hoare begin
   236.9  
  236.10  subsection {* State spaces *}
  236.11  
   237.1 --- a/src/HOL/Isar_examples/KnasterTarski.thy	Fri Jun 17 11:35:35 2005 +0200
   237.2 +++ b/src/HOL/Isar_examples/KnasterTarski.thy	Fri Jun 17 16:12:49 2005 +0200
   237.3 @@ -7,7 +7,7 @@
   237.4  
   237.5  header {* Textbook-style reasoning: the Knaster-Tarski Theorem *}
   237.6  
   237.7 -theory KnasterTarski = Main:
   237.8 +theory KnasterTarski imports Main begin
   237.9  
  237.10  
  237.11  subsection {* Prose version *}
   238.1 --- a/src/HOL/Isar_examples/MutilatedCheckerboard.thy	Fri Jun 17 11:35:35 2005 +0200
   238.2 +++ b/src/HOL/Isar_examples/MutilatedCheckerboard.thy	Fri Jun 17 16:12:49 2005 +0200
   238.3 @@ -6,7 +6,7 @@
   238.4  
   238.5  header {* The Mutilated Checker Board Problem *}
   238.6  
   238.7 -theory MutilatedCheckerboard = Main:
   238.8 +theory MutilatedCheckerboard imports Main begin
   238.9  
  238.10  text {*
  238.11   The Mutilated Checker Board Problem, formalized inductively.  See
   239.1 --- a/src/HOL/Isar_examples/NestedDatatype.thy	Fri Jun 17 11:35:35 2005 +0200
   239.2 +++ b/src/HOL/Isar_examples/NestedDatatype.thy	Fri Jun 17 16:12:49 2005 +0200
   239.3 @@ -1,7 +1,7 @@
   239.4  
   239.5  header {* Nested datatypes *}
   239.6  
   239.7 -theory NestedDatatype = Main:
   239.8 +theory NestedDatatype imports Main begin
   239.9  
  239.10  subsection {* Terms and substitution *}
  239.11  
   240.1 --- a/src/HOL/Isar_examples/Peirce.thy	Fri Jun 17 11:35:35 2005 +0200
   240.2 +++ b/src/HOL/Isar_examples/Peirce.thy	Fri Jun 17 16:12:49 2005 +0200
   240.3 @@ -5,7 +5,7 @@
   240.4  
   240.5  header {* Peirce's Law *}
   240.6  
   240.7 -theory Peirce = Main:
   240.8 +theory Peirce imports Main begin
   240.9  
  240.10  text {*
  240.11   We consider Peirce's Law: $((A \impl B) \impl A) \impl A$.  This is
   241.1 --- a/src/HOL/Isar_examples/Puzzle.thy	Fri Jun 17 11:35:35 2005 +0200
   241.2 +++ b/src/HOL/Isar_examples/Puzzle.thy	Fri Jun 17 16:12:49 2005 +0200
   241.3 @@ -1,7 +1,7 @@
   241.4  
   241.5  header {* An old chestnut *}
   241.6  
   241.7 -theory Puzzle = Main:
   241.8 +theory Puzzle imports Main begin
   241.9  
  241.10  text_raw {*
  241.11   \footnote{A question from ``Bundeswettbewerb Mathematik''.  Original
   242.1 --- a/src/HOL/Lambda/Commutation.thy	Fri Jun 17 11:35:35 2005 +0200
   242.2 +++ b/src/HOL/Lambda/Commutation.thy	Fri Jun 17 16:12:49 2005 +0200
   242.3 @@ -6,7 +6,7 @@
   242.4  
   242.5  header {* Abstract commutation and confluence notions *}
   242.6  
   242.7 -theory Commutation = Main:
   242.8 +theory Commutation imports Main begin
   242.9  
  242.10  subsection {* Basic definitions *}
  242.11  
   243.1 --- a/src/HOL/Lambda/Eta.thy	Fri Jun 17 11:35:35 2005 +0200
   243.2 +++ b/src/HOL/Lambda/Eta.thy	Fri Jun 17 16:12:49 2005 +0200
   243.3 @@ -6,7 +6,7 @@
   243.4  
   243.5  header {* Eta-reduction *}
   243.6  
   243.7 -theory Eta = ParRed:
   243.8 +theory Eta imports ParRed begin
   243.9  
  243.10  
  243.11  subsection {* Definition of eta-reduction and relatives *}
   244.1 --- a/src/HOL/Lambda/InductTermi.thy	Fri Jun 17 11:35:35 2005 +0200
   244.2 +++ b/src/HOL/Lambda/InductTermi.thy	Fri Jun 17 16:12:49 2005 +0200
   244.3 @@ -10,7 +10,7 @@
   244.4  
   244.5  header {* Inductive characterization of terminating lambda terms *}
   244.6  
   244.7 -theory InductTermi = ListBeta:
   244.8 +theory InductTermi imports ListBeta begin
   244.9  
  244.10  subsection {* Terminating lambda terms *}
  244.11  
   245.1 --- a/src/HOL/Lambda/Lambda.thy	Fri Jun 17 11:35:35 2005 +0200
   245.2 +++ b/src/HOL/Lambda/Lambda.thy	Fri Jun 17 16:12:49 2005 +0200
   245.3 @@ -6,7 +6,7 @@
   245.4  
   245.5  header {* Basic definitions of Lambda-calculus *}
   245.6  
   245.7 -theory Lambda = Main:
   245.8 +theory Lambda imports Main begin
   245.9  
  245.10  
  245.11  subsection {* Lambda-terms in de Bruijn notation and substitution *}
   246.1 --- a/src/HOL/Lambda/ListApplication.thy	Fri Jun 17 11:35:35 2005 +0200
   246.2 +++ b/src/HOL/Lambda/ListApplication.thy	Fri Jun 17 16:12:49 2005 +0200
   246.3 @@ -6,7 +6,7 @@
   246.4  
   246.5  header {* Application of a term to a list of terms *}
   246.6  
   246.7 -theory ListApplication = Lambda:
   246.8 +theory ListApplication imports Lambda begin
   246.9  
  246.10  syntax
  246.11    "_list_application" :: "dB => dB list => dB"    (infixl "\<degree>\<degree>" 150)
   247.1 --- a/src/HOL/Lambda/ListBeta.thy	Fri Jun 17 11:35:35 2005 +0200
   247.2 +++ b/src/HOL/Lambda/ListBeta.thy	Fri Jun 17 16:12:49 2005 +0200
   247.3 @@ -6,7 +6,7 @@
   247.4  
   247.5  header {* Lifting beta-reduction to lists *}
   247.6  
   247.7 -theory ListBeta = ListApplication + ListOrder:
   247.8 +theory ListBeta imports ListApplication ListOrder begin
   247.9  
  247.10  text {*
  247.11    Lifting beta-reduction to lists of terms, reducing exactly one element.
   248.1 --- a/src/HOL/Lambda/ListOrder.thy	Fri Jun 17 11:35:35 2005 +0200
   248.2 +++ b/src/HOL/Lambda/ListOrder.thy	Fri Jun 17 16:12:49 2005 +0200
   248.3 @@ -6,7 +6,7 @@
   248.4  
   248.5  header {* Lifting an order to lists of elements *}
   248.6  
   248.7 -theory ListOrder = Accessible_Part:
   248.8 +theory ListOrder imports Accessible_Part begin
   248.9  
  248.10  text {*
  248.11    Lifting an order to lists of elements, relating exactly one
   249.1 --- a/src/HOL/Lambda/ParRed.thy	Fri Jun 17 11:35:35 2005 +0200
   249.2 +++ b/src/HOL/Lambda/ParRed.thy	Fri Jun 17 16:12:49 2005 +0200
   249.3 @@ -9,7 +9,7 @@
   249.4  
   249.5  header {* Parallel reduction and a complete developments *}
   249.6  
   249.7 -theory ParRed = Lambda + Commutation:
   249.8 +theory ParRed imports Lambda Commutation begin
   249.9  
  249.10  
  249.11  subsection {* Parallel reduction *}
   250.1 --- a/src/HOL/Lambda/StrongNorm.thy	Fri Jun 17 11:35:35 2005 +0200
   250.2 +++ b/src/HOL/Lambda/StrongNorm.thy	Fri Jun 17 16:12:49 2005 +0200
   250.3 @@ -6,7 +6,7 @@
   250.4  
   250.5  header {* Strong normalization for simply-typed lambda calculus *}
   250.6  
   250.7 -theory StrongNorm = Type + InductTermi:
   250.8 +theory StrongNorm imports Type InductTermi begin
   250.9  
  250.10  text {*
  250.11  Formalization by Stefan Berghofer. Partly based on a paper proof by
   251.1 --- a/src/HOL/Lambda/Type.thy	Fri Jun 17 11:35:35 2005 +0200
   251.2 +++ b/src/HOL/Lambda/Type.thy	Fri Jun 17 16:12:49 2005 +0200
   251.3 @@ -6,7 +6,7 @@
   251.4  
   251.5  header {* Simply-typed lambda terms *}
   251.6  
   251.7 -theory Type = ListApplication:
   251.8 +theory Type imports ListApplication begin
   251.9  
  251.10  
  251.11  subsection {* Environments *}
   252.1 --- a/src/HOL/Lambda/WeakNorm.thy	Fri Jun 17 11:35:35 2005 +0200
   252.2 +++ b/src/HOL/Lambda/WeakNorm.thy	Fri Jun 17 16:12:49 2005 +0200
   252.3 @@ -6,7 +6,7 @@
   252.4  
   252.5  header {* Weak normalization for simply-typed lambda calculus *}
   252.6  
   252.7 -theory WeakNorm = Type:
   252.8 +theory WeakNorm imports Type begin
   252.9  
  252.10  text {*
  252.11  Formalization by Stefan Berghofer. Partly based on a paper proof by
   253.1 --- a/src/HOL/Lattice/Bounds.thy	Fri Jun 17 11:35:35 2005 +0200
   253.2 +++ b/src/HOL/Lattice/Bounds.thy	Fri Jun 17 16:12:49 2005 +0200
   253.3 @@ -5,7 +5,7 @@
   253.4  
   253.5  header {* Bounds *}
   253.6  
   253.7 -theory Bounds = Orders:
   253.8 +theory Bounds imports Orders begin
   253.9  
  253.10  subsection {* Infimum and supremum *}
  253.11  
   254.1 --- a/src/HOL/Lattice/CompleteLattice.thy	Fri Jun 17 11:35:35 2005 +0200
   254.2 +++ b/src/HOL/Lattice/CompleteLattice.thy	Fri Jun 17 16:12:49 2005 +0200
   254.3 @@ -5,7 +5,7 @@
   254.4  
   254.5  header {* Complete lattices *}
   254.6  
   254.7 -theory CompleteLattice = Lattice:
   254.8 +theory CompleteLattice imports Lattice begin
   254.9  
  254.10  subsection {* Complete lattice operations *}
  254.11  
   255.1 --- a/src/HOL/Lattice/Lattice.thy	Fri Jun 17 11:35:35 2005 +0200
   255.2 +++ b/src/HOL/Lattice/Lattice.thy	Fri Jun 17 16:12:49 2005 +0200
   255.3 @@ -5,7 +5,7 @@
   255.4  
   255.5  header {* Lattices *}
   255.6  
   255.7 -theory Lattice = Bounds:
   255.8 +theory Lattice imports Bounds begin
   255.9  
  255.10  subsection {* Lattice operations *}
  255.11  
   256.1 --- a/src/HOL/Lattice/Orders.thy	Fri Jun 17 11:35:35 2005 +0200
   256.2 +++ b/src/HOL/Lattice/Orders.thy	Fri Jun 17 16:12:49 2005 +0200
   256.3 @@ -5,7 +5,7 @@
   256.4  
   256.5  header {* Orders *}
   256.6  
   256.7 -theory Orders = Main:
   256.8 +theory Orders imports Main begin
   256.9  
  256.10  subsection {* Ordered structures *}
  256.11  
   257.1 --- a/src/HOL/Library/Word.thy	Fri Jun 17 11:35:35 2005 +0200
   257.2 +++ b/src/HOL/Library/Word.thy	Fri Jun 17 16:12:49 2005 +0200
   257.3 @@ -7,7 +7,7 @@
   257.4  
   257.5  theory Word
   257.6  imports Main
   257.7 -files "word_setup.ML"
   257.8 +uses "word_setup.ML"
   257.9  begin
  257.10  
  257.11  subsection {* Auxilary Lemmas *}
   258.1 --- a/src/HOL/Matrix/MatrixGeneral.thy	Fri Jun 17 11:35:35 2005 +0200
   258.2 +++ b/src/HOL/Matrix/MatrixGeneral.thy	Fri Jun 17 16:12:49 2005 +0200
   258.3 @@ -3,7 +3,7 @@
   258.4      Author:     Steven Obua
   258.5  *)
   258.6  
   258.7 -theory MatrixGeneral = Main:
   258.8 +theory MatrixGeneral imports Main begin
   258.9  
  258.10  types 'a infmatrix = "[nat, nat] \<Rightarrow> 'a"
  258.11  
   259.1 --- a/src/HOL/Matrix/SparseMatrix.thy	Fri Jun 17 11:35:35 2005 +0200
   259.2 +++ b/src/HOL/Matrix/SparseMatrix.thy	Fri Jun 17 16:12:49 2005 +0200
   259.3 @@ -1,4 +1,4 @@
   259.4 -theory SparseMatrix = Matrix:
   259.5 +theory SparseMatrix imports Matrix begin
   259.6  
   259.7  types 
   259.8    'a spvec = "(nat * 'a) list"
   260.1 --- a/src/HOL/MicroJava/BV/Altern.thy	Fri Jun 17 11:35:35 2005 +0200
   260.2 +++ b/src/HOL/MicroJava/BV/Altern.thy	Fri Jun 17 16:12:49 2005 +0200
   260.3 @@ -8,7 +8,7 @@
   260.4     used in compiler type correctness proof *)
   260.5  
   260.6  
   260.7 -theory Altern = BVSpec:
   260.8 +theory Altern imports BVSpec begin
   260.9  
  260.10  
  260.11  constdefs
   261.1 --- a/src/HOL/MicroJava/BV/BVExample.thy	Fri Jun 17 11:35:35 2005 +0200
   261.2 +++ b/src/HOL/MicroJava/BV/BVExample.thy	Fri Jun 17 16:12:49 2005 +0200
   261.3 @@ -5,7 +5,7 @@
   261.4  
   261.5  header {* \isaheader{Example Welltypings}\label{sec:BVExample} *}
   261.6  
   261.7 -theory BVExample = JVMListExample + BVSpecTypeSafe + JVM:
   261.8 +theory BVExample imports JVMListExample BVSpecTypeSafe JVM begin
   261.9  
  261.10  text {*
  261.11    This theory shows type correctness of the example program in section 
   262.1 --- a/src/HOL/MicroJava/BV/BVNoTypeError.thy	Fri Jun 17 11:35:35 2005 +0200
   262.2 +++ b/src/HOL/MicroJava/BV/BVNoTypeError.thy	Fri Jun 17 16:12:49 2005 +0200
   262.3 @@ -5,7 +5,7 @@
   262.4  
   262.5  header {* \isaheader{Welltyped Programs produce no Type Errors} *}
   262.6  
   262.7 -theory BVNoTypeError = JVMDefensive + BVSpecTypeSafe:
   262.8 +theory BVNoTypeError imports JVMDefensive BVSpecTypeSafe begin
   262.9  
  262.10  text {*
  262.11    Some simple lemmas about the type testing functions of the
   263.1 --- a/src/HOL/MicroJava/BV/BVSpec.thy	Fri Jun 17 11:35:35 2005 +0200
   263.2 +++ b/src/HOL/MicroJava/BV/BVSpec.thy	Fri Jun 17 16:12:49 2005 +0200
   263.3 @@ -7,7 +7,7 @@
   263.4  
   263.5  header {* \isaheader{The Bytecode Verifier}\label{sec:BVSpec} *}
   263.6  
   263.7 -theory BVSpec = Effect:
   263.8 +theory BVSpec imports Effect begin
   263.9  
  263.10  text {*
  263.11    This theory contains a specification of the BV. The specification
   264.1 --- a/src/HOL/MicroJava/BV/BVSpecTypeSafe.thy	Fri Jun 17 11:35:35 2005 +0200
   264.2 +++ b/src/HOL/MicroJava/BV/BVSpecTypeSafe.thy	Fri Jun 17 16:12:49 2005 +0200
   264.3 @@ -6,7 +6,7 @@
   264.4  
   264.5  header {* \isaheader{BV Type Safety Proof}\label{sec:BVSpecTypeSafe} *}
   264.6  
   264.7 -theory BVSpecTypeSafe = Correct:
   264.8 +theory BVSpecTypeSafe imports Correct begin
   264.9  
  264.10  text {*
  264.11    This theory contains proof that the specification of the bytecode
   265.1 --- a/src/HOL/MicroJava/BV/Correct.thy	Fri Jun 17 11:35:35 2005 +0200
   265.2 +++ b/src/HOL/MicroJava/BV/Correct.thy	Fri Jun 17 16:12:49 2005 +0200
   265.3 @@ -9,7 +9,7 @@
   265.4  
   265.5  header {* \isaheader{BV Type Safety Invariant} *}
   265.6  
   265.7 -theory Correct = BVSpec + JVMExec:
   265.8 +theory Correct imports BVSpec JVMExec begin
   265.9  
  265.10  constdefs
  265.11    approx_val :: "[jvm_prog,aheap,val,ty err] \<Rightarrow> bool"
   266.1 --- a/src/HOL/MicroJava/BV/EffectMono.thy	Fri Jun 17 11:35:35 2005 +0200
   266.2 +++ b/src/HOL/MicroJava/BV/EffectMono.thy	Fri Jun 17 16:12:49 2005 +0200
   266.3 @@ -6,7 +6,7 @@
   266.4  
   266.5  header {* \isaheader{Monotonicity of eff and app} *}
   266.6  
   266.7 -theory EffectMono = Effect:
   266.8 +theory EffectMono imports Effect begin
   266.9  
  266.10  
  266.11  lemma PrimT_PrimT: "(G \<turnstile> xb \<preceq> PrimT p) = (xb = PrimT p)"
   267.1 --- a/src/HOL/MicroJava/BV/Err.thy	Fri Jun 17 11:35:35 2005 +0200
   267.2 +++ b/src/HOL/MicroJava/BV/Err.thy	Fri Jun 17 16:12:49 2005 +0200
   267.3 @@ -8,7 +8,7 @@
   267.4  
   267.5  header {* \isaheader{The Error Type} *}
   267.6  
   267.7 -theory Err = Semilat:
   267.8 +theory Err imports Semilat begin
   267.9  
  267.10  datatype 'a err = Err | OK 'a
  267.11  
   268.1 --- a/src/HOL/MicroJava/BV/JType.thy	Fri Jun 17 11:35:35 2005 +0200
   268.2 +++ b/src/HOL/MicroJava/BV/JType.thy	Fri Jun 17 16:12:49 2005 +0200
   268.3 @@ -6,7 +6,7 @@
   268.4  
   268.5  header {* \isaheader{The Java Type System as Semilattice} *}
   268.6  
   268.7 -theory JType = WellForm + Err:
   268.8 +theory JType imports WellForm Err begin
   268.9  
  268.10  constdefs
  268.11    super :: "'a prog \<Rightarrow> cname \<Rightarrow> cname"
   269.1 --- a/src/HOL/MicroJava/BV/JVM.thy	Fri Jun 17 11:35:35 2005 +0200
   269.2 +++ b/src/HOL/MicroJava/BV/JVM.thy	Fri Jun 17 16:12:49 2005 +0200
   269.3 @@ -6,7 +6,7 @@
   269.4  
   269.5  header {* \isaheader{Kildall for the JVM}\label{sec:JVM} *}
   269.6  
   269.7 -theory JVM = Kildall + Typing_Framework_JVM:
   269.8 +theory JVM imports Kildall Typing_Framework_JVM begin
   269.9  
  269.10  
  269.11  constdefs
   270.1 --- a/src/HOL/MicroJava/BV/JVMType.thy	Fri Jun 17 11:35:35 2005 +0200
   270.2 +++ b/src/HOL/MicroJava/BV/JVMType.thy	Fri Jun 17 16:12:49 2005 +0200
   270.3 @@ -7,7 +7,7 @@
   270.4  
   270.5  header {* \isaheader{The JVM Type System as Semilattice} *}
   270.6  
   270.7 -theory JVMType = Opt + Product + Listn + JType:
   270.8 +theory JVMType imports Opt Product Listn JType begin
   270.9  
  270.10  types
  270.11    locvars_type = "ty err list"
   271.1 --- a/src/HOL/MicroJava/BV/Kildall.thy	Fri Jun 17 11:35:35 2005 +0200
   271.2 +++ b/src/HOL/MicroJava/BV/Kildall.thy	Fri Jun 17 16:12:49 2005 +0200
   271.3 @@ -8,7 +8,7 @@
   271.4  
   271.5  header {* \isaheader{Kildall's Algorithm}\label{sec:Kildall} *}
   271.6  
   271.7 -theory Kildall = SemilatAlg + While_Combinator:
   271.8 +theory Kildall imports SemilatAlg While_Combinator begin
   271.9  
  271.10  
  271.11  consts
   272.1 --- a/src/HOL/MicroJava/BV/LBVComplete.thy	Fri Jun 17 11:35:35 2005 +0200
   272.2 +++ b/src/HOL/MicroJava/BV/LBVComplete.thy	Fri Jun 17 16:12:49 2005 +0200
   272.3 @@ -6,7 +6,7 @@
   272.4  
   272.5  header {* \isaheader{Completeness of the LBV} *}
   272.6  
   272.7 -theory LBVComplete = LBVSpec + Typing_Framework:
   272.8 +theory LBVComplete imports LBVSpec Typing_Framework begin
   272.9  
  272.10  constdefs
  272.11    is_target :: "['s step_type, 's list, nat] \<Rightarrow> bool" 
   273.1 --- a/src/HOL/MicroJava/BV/LBVCorrect.thy	Fri Jun 17 11:35:35 2005 +0200
   273.2 +++ b/src/HOL/MicroJava/BV/LBVCorrect.thy	Fri Jun 17 16:12:49 2005 +0200
   273.3 @@ -6,7 +6,7 @@
   273.4  
   273.5  header {* \isaheader{Correctness of the LBV} *}
   273.6  
   273.7 -theory LBVCorrect = LBVSpec + Typing_Framework:
   273.8 +theory LBVCorrect imports LBVSpec Typing_Framework begin
   273.9  
  273.10  locale (open) lbvs = lbv +
  273.11    fixes s0  :: 'a ("s\<^sub>0")
   274.1 --- a/src/HOL/MicroJava/BV/LBVJVM.thy	Fri Jun 17 11:35:35 2005 +0200
   274.2 +++ b/src/HOL/MicroJava/BV/LBVJVM.thy	Fri Jun 17 16:12:49 2005 +0200
   274.3 @@ -6,7 +6,7 @@
   274.4  
   274.5  header {* \isaheader{LBV for the JVM}\label{sec:JVM} *}
   274.6  
   274.7 -theory LBVJVM = LBVCorrect + LBVComplete + Typing_Framework_JVM:
   274.8 +theory LBVJVM imports LBVCorrect LBVComplete Typing_Framework_JVM begin
   274.9  
  274.10  types prog_cert = "cname \<Rightarrow> sig \<Rightarrow> state list"
  274.11  
   275.1 --- a/src/HOL/MicroJava/BV/LBVSpec.thy	Fri Jun 17 11:35:35 2005 +0200
   275.2 +++ b/src/HOL/MicroJava/BV/LBVSpec.thy	Fri Jun 17 16:12:49 2005 +0200
   275.3 @@ -6,7 +6,7 @@
   275.4  
   275.5  header {* \isaheader{The Lightweight Bytecode Verifier} *}
   275.6  
   275.7 -theory LBVSpec = SemilatAlg + Opt:
   275.8 +theory LBVSpec imports SemilatAlg Opt begin
   275.9  
  275.10  types
  275.11    's certificate = "'s list"   
   276.1 --- a/src/HOL/MicroJava/BV/Listn.thy	Fri Jun 17 11:35:35 2005 +0200
   276.2 +++ b/src/HOL/MicroJava/BV/Listn.thy	Fri Jun 17 16:12:49 2005 +0200
   276.3 @@ -8,7 +8,7 @@
   276.4  
   276.5  header {* \isaheader{Fixed Length Lists} *}
   276.6  
   276.7 -theory Listn = Err:
   276.8 +theory Listn imports Err begin
   276.9  
  276.10  constdefs
  276.11  
   277.1 --- a/src/HOL/MicroJava/BV/Opt.thy	Fri Jun 17 11:35:35 2005 +0200
   277.2 +++ b/src/HOL/MicroJava/BV/Opt.thy	Fri Jun 17 16:12:49 2005 +0200
   277.3 @@ -8,7 +8,7 @@
   277.4  
   277.5  header {* \isaheader{More about Options} *}
   277.6  
   277.7 -theory Opt = Err:
   277.8 +theory Opt imports Err begin
   277.9  
  277.10  constdefs
  277.11   le :: "'a ord \<Rightarrow> 'a option ord"
   278.1 --- a/src/HOL/MicroJava/BV/Product.thy	Fri Jun 17 11:35:35 2005 +0200
   278.2 +++ b/src/HOL/MicroJava/BV/Product.thy	Fri Jun 17 16:12:49 2005 +0200
   278.3 @@ -8,7 +8,7 @@
   278.4  
   278.5  header {* \isaheader{Products as Semilattices} *}
   278.6  
   278.7 -theory Product = Err:
   278.8 +theory Product imports Err begin
   278.9  
  278.10  constdefs
  278.11   le :: "'a ord \<Rightarrow> 'b ord \<Rightarrow> ('a * 'b) ord"
   279.1 --- a/src/HOL/MicroJava/BV/Semilat.thy	Fri Jun 17 11:35:35 2005 +0200
   279.2 +++ b/src/HOL/MicroJava/BV/Semilat.thy	Fri Jun 17 16:12:49 2005 +0200
   279.3 @@ -11,7 +11,7 @@
   279.4    \isaheader{Semilattices} 
   279.5  *}
   279.6  
   279.7 -theory Semilat = While_Combinator:
   279.8 +theory Semilat imports While_Combinator begin
   279.9  
  279.10  types 'a ord    = "'a \<Rightarrow> 'a \<Rightarrow> bool"
  279.11        'a binop  = "'a \<Rightarrow> 'a \<Rightarrow> 'a"
   280.1 --- a/src/HOL/MicroJava/BV/SemilatAlg.thy	Fri Jun 17 11:35:35 2005 +0200
   280.2 +++ b/src/HOL/MicroJava/BV/SemilatAlg.thy	Fri Jun 17 16:12:49 2005 +0200
   280.3 @@ -6,7 +6,7 @@
   280.4  
   280.5  header {* \isaheader{More on Semilattices} *}
   280.6  
   280.7 -theory SemilatAlg = Typing_Framework + Product:
   280.8 +theory SemilatAlg imports Typing_Framework Product begin
   280.9  
  280.10  
  280.11  constdefs 
   281.1 --- a/src/HOL/MicroJava/BV/Typing_Framework.thy	Fri Jun 17 11:35:35 2005 +0200
   281.2 +++ b/src/HOL/MicroJava/BV/Typing_Framework.thy	Fri Jun 17 16:12:49 2005 +0200
   281.3 @@ -6,7 +6,7 @@
   281.4  
   281.5  header {* \isaheader{Typing and Dataflow Analysis Framework} *}
   281.6  
   281.7 -theory Typing_Framework = Listn:
   281.8 +theory Typing_Framework imports Listn begin
   281.9  
  281.10  text {* 
  281.11    The relationship between dataflow analysis and a welltyped-instruction predicate. 
   282.1 --- a/src/HOL/MicroJava/BV/Typing_Framework_JVM.thy	Fri Jun 17 11:35:35 2005 +0200
   282.2 +++ b/src/HOL/MicroJava/BV/Typing_Framework_JVM.thy	Fri Jun 17 16:12:49 2005 +0200
   282.3 @@ -6,7 +6,7 @@
   282.4  
   282.5  header {* \isaheader{The Typing Framework for the JVM}\label{sec:JVM} *}
   282.6  
   282.7 -theory Typing_Framework_JVM = Typing_Framework_err + JVMType + EffectMono + BVSpec:
   282.8 +theory Typing_Framework_JVM imports Typing_Framework_err JVMType EffectMono BVSpec begin
   282.9  
  282.10  
  282.11  constdefs
   283.1 --- a/src/HOL/MicroJava/BV/Typing_Framework_err.thy	Fri Jun 17 11:35:35 2005 +0200
   283.2 +++ b/src/HOL/MicroJava/BV/Typing_Framework_err.thy	Fri Jun 17 16:12:49 2005 +0200
   283.3 @@ -7,7 +7,7 @@
   283.4  
   283.5  header {* \isaheader{Lifting the Typing Framework to err, app, and eff} *}
   283.6  
   283.7 -theory Typing_Framework_err = Typing_Framework + SemilatAlg:
   283.8 +theory Typing_Framework_err imports Typing_Framework SemilatAlg begin
   283.9  
  283.10  constdefs
  283.11  
   284.1 --- a/src/HOL/MicroJava/Comp/Index.thy	Fri Jun 17 11:35:35 2005 +0200
   284.2 +++ b/src/HOL/MicroJava/Comp/Index.thy	Fri Jun 17 16:12:49 2005 +0200
   284.3 @@ -5,7 +5,7 @@
   284.4  
   284.5  (* Index of variable in list of parameter names and local variables *)
   284.6  
   284.7 -theory Index =  AuxLemmas + DefsComp:
   284.8 +theory Index imports  AuxLemmas DefsComp begin
   284.9  
  284.10  (*indexing a variable name among all variable declarations in a method body*)
  284.11  constdefs
   285.1 --- a/src/HOL/MicroJava/Comp/LemmasComp.thy	Fri Jun 17 11:35:35 2005 +0200
   285.2 +++ b/src/HOL/MicroJava/Comp/LemmasComp.thy	Fri Jun 17 16:12:49 2005 +0200
   285.3 @@ -5,7 +5,7 @@
   285.4  
   285.5  (* Lemmas for compiler correctness proof *)
   285.6  
   285.7 -theory LemmasComp = TranslComp:
   285.8 +theory LemmasComp imports TranslComp begin
   285.9  
  285.10  
  285.11  declare split_paired_All [simp del]
   286.1 --- a/src/HOL/MicroJava/Comp/NatCanonify.thy	Fri Jun 17 11:35:35 2005 +0200
   286.2 +++ b/src/HOL/MicroJava/Comp/NatCanonify.thy	Fri Jun 17 16:12:49 2005 +0200
   286.3 @@ -3,7 +3,7 @@
   286.4      Author:     Martin Strecker
   286.5  *)
   286.6  
   286.7 -theory NatCanonify = Main:
   286.8 +theory NatCanonify imports Main begin
   286.9  
  286.10  (************************************************************************)
  286.11    (* Canonizer for converting nat to int *)
   287.1 --- a/src/HOL/MicroJava/Comp/TranslComp.thy	Fri Jun 17 11:35:35 2005 +0200
   287.2 +++ b/src/HOL/MicroJava/Comp/TranslComp.thy	Fri Jun 17 16:12:49 2005 +0200
   287.3 @@ -5,7 +5,7 @@
   287.4  
   287.5  (* Compiling MicroJava into MicroJVM -- Translation functions *)
   287.6  
   287.7 -theory TranslComp =  TranslCompTp:
   287.8 +theory TranslComp imports  TranslCompTp begin
   287.9  
  287.10  
  287.11  (* parameter java_mb only serves to define function index later *)
   288.1 --- a/src/HOL/MicroJava/Comp/TypeInf.thy	Fri Jun 17 11:35:35 2005 +0200
   288.2 +++ b/src/HOL/MicroJava/Comp/TypeInf.thy	Fri Jun 17 16:12:49 2005 +0200
   288.3 @@ -4,7 +4,7 @@
   288.4  *)
   288.5  
   288.6  (* Exact position in theory hierarchy still to be determined *)
   288.7 -theory TypeInf =  WellType:
   288.8 +theory TypeInf imports  WellType begin
   288.9  
  288.10  
  288.11  
   289.1 --- a/src/HOL/MicroJava/J/Conform.thy	Fri Jun 17 11:35:35 2005 +0200
   289.2 +++ b/src/HOL/MicroJava/J/Conform.thy	Fri Jun 17 16:12:49 2005 +0200
   289.3 @@ -6,7 +6,7 @@
   289.4  
   289.5  header {* \isaheader{Conformity Relations for Type Soundness Proof} *}
   289.6  
   289.7 -theory Conform = State + WellType + Exceptions:
   289.8 +theory Conform imports State WellType Exceptions begin
   289.9  
  289.10  types 'c env_ = "'c prog \<times> (vname \<rightharpoonup> ty)"  -- "same as @{text env} of @{text WellType.thy}"
  289.11  
   290.1 --- a/src/HOL/MicroJava/J/Decl.thy	Fri Jun 17 11:35:35 2005 +0200
   290.2 +++ b/src/HOL/MicroJava/J/Decl.thy	Fri Jun 17 16:12:49 2005 +0200
   290.3 @@ -6,7 +6,7 @@
   290.4  
   290.5  header {* \isaheader{Class Declarations and Programs} *}
   290.6  
   290.7 -theory Decl = Type:
   290.8 +theory Decl imports Type begin
   290.9  
  290.10  types 
  290.11    fdecl    = "vname \<times> ty"        -- "field declaration, cf. 8.3 (, 9.3)"
   291.1 --- a/src/HOL/MicroJava/J/Eval.thy	Fri Jun 17 11:35:35 2005 +0200
   291.2 +++ b/src/HOL/MicroJava/J/Eval.thy	Fri Jun 17 16:12:49 2005 +0200
   291.3 @@ -6,7 +6,7 @@
   291.4  
   291.5  header {* \isaheader{Operational Evaluation (big step) Semantics} *}
   291.6  
   291.7 -theory Eval = State + WellType:
   291.8 +theory Eval imports State WellType begin
   291.9  
  291.10  
  291.11    -- "Auxiliary notions"
   292.1 --- a/src/HOL/MicroJava/J/Example.thy	Fri Jun 17 11:35:35 2005 +0200
   292.2 +++ b/src/HOL/MicroJava/J/Example.thy	Fri Jun 17 16:12:49 2005 +0200
   292.3 @@ -6,7 +6,7 @@
   292.4  
   292.5  header {* \isaheader{Example MicroJava Program} *}
   292.6  
   292.7 -theory Example = SystemClasses + Eval:
   292.8 +theory Example imports SystemClasses Eval begin
   292.9  
  292.10  text {* 
  292.11  The following example MicroJava program includes:
   293.1 --- a/src/HOL/MicroJava/J/Exceptions.thy	Fri Jun 17 11:35:35 2005 +0200
   293.2 +++ b/src/HOL/MicroJava/J/Exceptions.thy	Fri Jun 17 16:12:49 2005 +0200
   293.3 @@ -4,7 +4,7 @@
   293.4      Copyright   2002 Technische Universitaet Muenchen
   293.5  *)
   293.6  
   293.7 -theory Exceptions = State:
   293.8 +theory Exceptions imports State begin
   293.9  
  293.10  text {* a new, blank object with default values in all fields: *}
  293.11  constdefs
   294.1 --- a/src/HOL/MicroJava/J/JBasis.thy	Fri Jun 17 11:35:35 2005 +0200
   294.2 +++ b/src/HOL/MicroJava/J/JBasis.thy	Fri Jun 17 16:12:49 2005 +0200
   294.3 @@ -9,7 +9,7 @@
   294.4    \isaheader{Some Auxiliary Definitions}
   294.5  *}
   294.6  
   294.7 -theory JBasis = Main: 
   294.8 +theory JBasis imports Main begin 
   294.9  
  294.10  lemmas [simp] = Let_def
  294.11  
   295.1 --- a/src/HOL/MicroJava/J/JListExample.thy	Fri Jun 17 11:35:35 2005 +0200
   295.2 +++ b/src/HOL/MicroJava/J/JListExample.thy	Fri Jun 17 16:12:49 2005 +0200
   295.3 @@ -5,7 +5,7 @@
   295.4  
   295.5  header {* \isaheader{Example for generating executable code from Java semantics} *}
   295.6  
   295.7 -theory JListExample = Eval + SystemClasses:
   295.8 +theory JListExample imports Eval SystemClasses begin
   295.9  
  295.10  ML {* Syntax.ambiguity_level := 100000 *}
  295.11  
   296.1 --- a/src/HOL/MicroJava/J/JTypeSafe.thy	Fri Jun 17 11:35:35 2005 +0200
   296.2 +++ b/src/HOL/MicroJava/J/JTypeSafe.thy	Fri Jun 17 16:12:49 2005 +0200
   296.3 @@ -6,7 +6,7 @@
   296.4  
   296.5  header {* \isaheader{Type Safety Proof} *}
   296.6  
   296.7 -theory JTypeSafe = Eval + Conform:
   296.8 +theory JTypeSafe imports Eval Conform begin
   296.9  
  296.10  declare split_beta [simp]
  296.11  
   297.1 --- a/src/HOL/MicroJava/J/State.thy	Fri Jun 17 11:35:35 2005 +0200
   297.2 +++ b/src/HOL/MicroJava/J/State.thy	Fri Jun 17 16:12:49 2005 +0200
   297.3 @@ -6,7 +6,7 @@
   297.4  
   297.5  header {* \isaheader{Program State} *}
   297.6  
   297.7 -theory State = TypeRel + Value:
   297.8 +theory State imports TypeRel Value begin
   297.9  
  297.10  types 
  297.11    fields_ = "(vname \<times> cname \<rightharpoonup> val)"  -- "field name, defining class, value"
   298.1 --- a/src/HOL/MicroJava/J/SystemClasses.thy	Fri Jun 17 11:35:35 2005 +0200
   298.2 +++ b/src/HOL/MicroJava/J/SystemClasses.thy	Fri Jun 17 16:12:49 2005 +0200
   298.3 @@ -6,7 +6,7 @@
   298.4  
   298.5  header {* \isaheader{System Classes} *}
   298.6  
   298.7 -theory SystemClasses = Decl:
   298.8 +theory SystemClasses imports Decl begin
   298.9  
  298.10  text {*
  298.11    This theory provides definitions for the @{text Object} class,
   299.1 --- a/src/HOL/MicroJava/J/Term.thy	Fri Jun 17 11:35:35 2005 +0200
   299.2 +++ b/src/HOL/MicroJava/J/Term.thy	Fri Jun 17 16:12:49 2005 +0200
   299.3 @@ -6,7 +6,7 @@
   299.4  
   299.5  header {* \isaheader{Expressions and Statements} *}
   299.6  
   299.7 -theory Term = Value:
   299.8 +theory Term imports Value begin
   299.9  
  299.10  datatype binop = Eq | Add    -- "function codes for binary operation"
  299.11  
   300.1 --- a/src/HOL/MicroJava/J/Type.thy	Fri Jun 17 11:35:35 2005 +0200
   300.2 +++ b/src/HOL/MicroJava/J/Type.thy	Fri Jun 17 16:12:49 2005 +0200
   300.3 @@ -6,7 +6,7 @@
   300.4  
   300.5  header {* \isaheader{Java types} *}
   300.6  
   300.7 -theory Type = JBasis:
   300.8 +theory Type imports JBasis begin
   300.9  
  300.10  typedecl cnam 
  300.11  
   301.1 --- a/src/HOL/MicroJava/J/TypeRel.thy	Fri Jun 17 11:35:35 2005 +0200
   301.2 +++ b/src/HOL/MicroJava/J/TypeRel.thy	Fri Jun 17 16:12:49 2005 +0200
   301.3 @@ -6,7 +6,7 @@
   301.4  
   301.5  header {* \isaheader{Relations between Java Types} *}
   301.6  
   301.7 -theory TypeRel = Decl:
   301.8 +theory TypeRel imports Decl begin
   301.9  
  301.10  consts
  301.11    subcls1 :: "'c prog => (cname \<times> cname) set"  -- "subclass"
   302.1 --- a/src/HOL/MicroJava/J/Value.thy	Fri Jun 17 11:35:35 2005 +0200
   302.2 +++ b/src/HOL/MicroJava/J/Value.thy	Fri Jun 17 16:12:49 2005 +0200
   302.3 @@ -6,7 +6,7 @@
   302.4  
   302.5  header {* \isaheader{Java Values} *}
   302.6  
   302.7 -theory Value = Type:
   302.8 +theory Value imports Type begin
   302.9  
  302.10  typedecl loc_ -- "locations, i.e. abstract references on objects" 
  302.11  
   303.1 --- a/src/HOL/MicroJava/J/WellForm.thy	Fri Jun 17 11:35:35 2005 +0200
   303.2 +++ b/src/HOL/MicroJava/J/WellForm.thy	Fri Jun 17 16:12:49 2005 +0200
   303.3 @@ -6,7 +6,7 @@
   303.4  
   303.5  header {* \isaheader{Well-formedness of Java programs} *}
   303.6  
   303.7 -theory WellForm = TypeRel + SystemClasses:
   303.8 +theory WellForm imports TypeRel SystemClasses begin
   303.9  
  303.10  text {*
  303.11  for static checks on expressions and statements, see WellType.
   304.1 --- a/src/HOL/MicroJava/J/WellType.thy	Fri Jun 17 11:35:35 2005 +0200
   304.2 +++ b/src/HOL/MicroJava/J/WellType.thy	Fri Jun 17 16:12:49 2005 +0200
   304.3 @@ -6,7 +6,7 @@
   304.4  
   304.5  header {* \isaheader{Well-typedness Constraints} *}
   304.6  
   304.7 -theory WellType = Term + WellForm:
   304.8 +theory WellType imports Term WellForm begin
   304.9  
  304.10  text {*
  304.11  the formulation of well-typedness of method calls given below (as well as
   305.1 --- a/src/HOL/MicroJava/JVM/JVMDefensive.thy	Fri Jun 17 11:35:35 2005 +0200
   305.2 +++ b/src/HOL/MicroJava/JVM/JVMDefensive.thy	Fri Jun 17 16:12:49 2005 +0200
   305.3 @@ -5,7 +5,7 @@
   305.4  
   305.5  header {* \isaheader{A Defensive JVM} *}
   305.6  
   305.7 -theory JVMDefensive = JVMExec:
   305.8 +theory JVMDefensive imports JVMExec begin
   305.9  
  305.10  text {*
  305.11    Extend the state space by one element indicating a type error (or
   306.1 --- a/src/HOL/MicroJava/JVM/JVMExceptions.thy	Fri Jun 17 11:35:35 2005 +0200
   306.2 +++ b/src/HOL/MicroJava/JVM/JVMExceptions.thy	Fri Jun 17 16:12:49 2005 +0200
   306.3 @@ -6,7 +6,7 @@
   306.4  
   306.5  header {* \isaheader{Exception handling in the JVM} *}
   306.6  
   306.7 -theory JVMExceptions = JVMInstructions:
   306.8 +theory JVMExceptions imports JVMInstructions begin
   306.9  
  306.10  constdefs
  306.11    match_exception_entry :: "jvm_prog \<Rightarrow> cname \<Rightarrow> p_count \<Rightarrow> exception_entry \<Rightarrow> bool"
   307.1 --- a/src/HOL/MicroJava/JVM/JVMExec.thy	Fri Jun 17 11:35:35 2005 +0200
   307.2 +++ b/src/HOL/MicroJava/JVM/JVMExec.thy	Fri Jun 17 16:12:49 2005 +0200
   307.3 @@ -6,7 +6,7 @@
   307.4  
   307.5  header {* \isaheader{Program Execution in the JVM} *}
   307.6  
   307.7 -theory JVMExec = JVMExecInstr + JVMExceptions:
   307.8 +theory JVMExec imports JVMExecInstr JVMExceptions begin
   307.9  
  307.10  
  307.11  consts
   308.1 --- a/src/HOL/MicroJava/JVM/JVMExecInstr.thy	Fri Jun 17 11:35:35 2005 +0200
   308.2 +++ b/src/HOL/MicroJava/JVM/JVMExecInstr.thy	Fri Jun 17 16:12:49 2005 +0200
   308.3 @@ -8,7 +8,7 @@
   308.4  header {* \isaheader{JVM Instruction Semantics} *}
   308.5  
   308.6  
   308.7 -theory JVMExecInstr = JVMInstructions + JVMState:
   308.8 +theory JVMExecInstr imports JVMInstructions JVMState begin
   308.9  
  308.10  
  308.11  consts
   309.1 --- a/src/HOL/MicroJava/JVM/JVMInstructions.thy	Fri Jun 17 11:35:35 2005 +0200
   309.2 +++ b/src/HOL/MicroJava/JVM/JVMInstructions.thy	Fri Jun 17 16:12:49 2005 +0200
   309.3 @@ -7,7 +7,7 @@
   309.4  header {* \isaheader{Instructions of the JVM} *}
   309.5  
   309.6  
   309.7 -theory JVMInstructions = JVMState:
   309.8 +theory JVMInstructions imports JVMState begin
   309.9  
  309.10  
  309.11  datatype 
   310.1 --- a/src/HOL/MicroJava/JVM/JVMListExample.thy	Fri Jun 17 11:35:35 2005 +0200
   310.2 +++ b/src/HOL/MicroJava/JVM/JVMListExample.thy	Fri Jun 17 16:12:49 2005 +0200
   310.3 @@ -5,7 +5,7 @@
   310.4  
   310.5  header {* \isaheader{Example for generating executable code from JVM semantics}\label{sec:JVMListExample} *}
   310.6  
   310.7 -theory JVMListExample = SystemClasses + JVMExec:
   310.8 +theory JVMListExample imports SystemClasses JVMExec begin
   310.9  
  310.10  consts
  310.11    list_nam :: cnam
   311.1 --- a/src/HOL/NanoJava/AxSem.thy	Fri Jun 17 11:35:35 2005 +0200
   311.2 +++ b/src/HOL/NanoJava/AxSem.thy	Fri Jun 17 16:12:49 2005 +0200
   311.3 @@ -6,7 +6,7 @@
   311.4  
   311.5  header "Axiomatic Semantics"
   311.6  
   311.7 -theory AxSem = State:
   311.8 +theory AxSem imports State begin
   311.9  
  311.10  types assn   = "state => bool"
  311.11       vassn   = "val => assn"
   312.1 --- a/src/HOL/NanoJava/Decl.thy	Fri Jun 17 11:35:35 2005 +0200
   312.2 +++ b/src/HOL/NanoJava/Decl.thy	Fri Jun 17 16:12:49 2005 +0200
   312.3 @@ -6,7 +6,7 @@
   312.4  
   312.5  header "Types, class Declarations, and whole programs"
   312.6  
   312.7 -theory Decl = Term:
   312.8 +theory Decl imports Term begin
   312.9  
  312.10  datatype ty
  312.11    = NT           --{* null type  *}
   313.1 --- a/src/HOL/NanoJava/Equivalence.thy	Fri Jun 17 11:35:35 2005 +0200
   313.2 +++ b/src/HOL/NanoJava/Equivalence.thy	Fri Jun 17 16:12:49 2005 +0200
   313.3 @@ -6,7 +6,7 @@
   313.4  
   313.5  header "Equivalence of Operational and Axiomatic Semantics"
   313.6  
   313.7 -theory Equivalence = OpSem + AxSem:
   313.8 +theory Equivalence imports OpSem AxSem begin
   313.9  
  313.10  subsection "Validity"
  313.11  
   314.1 --- a/src/HOL/NanoJava/Example.thy	Fri Jun 17 11:35:35 2005 +0200
   314.2 +++ b/src/HOL/NanoJava/Example.thy	Fri Jun 17 16:12:49 2005 +0200
   314.3 @@ -6,7 +6,7 @@
   314.4  
   314.5  header "Example"
   314.6  
   314.7 -theory Example = Equivalence:
   314.8 +theory Example imports Equivalence begin
   314.9  
  314.10  text {*
  314.11  
   315.1 --- a/src/HOL/NanoJava/OpSem.thy	Fri Jun 17 11:35:35 2005 +0200
   315.2 +++ b/src/HOL/NanoJava/OpSem.thy	Fri Jun 17 16:12:49 2005 +0200
   315.3 @@ -6,7 +6,7 @@
   315.4  
   315.5  header "Operational Evaluation Semantics"
   315.6  
   315.7 -theory OpSem = State:
   315.8 +theory OpSem imports State begin
   315.9  
  315.10  consts
  315.11   exec :: "(state \<times> stmt       \<times> nat \<times> state) set"
   316.1 --- a/src/HOL/NanoJava/State.thy	Fri Jun 17 11:35:35 2005 +0200
   316.2 +++ b/src/HOL/NanoJava/State.thy	Fri Jun 17 16:12:49 2005 +0200
   316.3 @@ -6,7 +6,7 @@
   316.4  
   316.5  header "Program State"
   316.6  
   316.7 -theory State = TypeRel:
   316.8 +theory State imports TypeRel begin
   316.9  
  316.10  constdefs
  316.11  
   317.1 --- a/src/HOL/NanoJava/Term.thy	Fri Jun 17 11:35:35 2005 +0200
   317.2 +++ b/src/HOL/NanoJava/Term.thy	Fri Jun 17 16:12:49 2005 +0200
   317.3 @@ -6,7 +6,7 @@
   317.4  
   317.5  header "Statements and expression emulations"
   317.6  
   317.7 -theory Term = Main:
   317.8 +theory Term imports Main begin
   317.9  
  317.10  typedecl cname  --{* class    name *}
  317.11  typedecl mname  --{* method   name *}
   318.1 --- a/src/HOL/NanoJava/TypeRel.thy	Fri Jun 17 11:35:35 2005 +0200
   318.2 +++ b/src/HOL/NanoJava/TypeRel.thy	Fri Jun 17 16:12:49 2005 +0200
   318.3 @@ -6,7 +6,7 @@
   318.4  
   318.5  header "Type relations"
   318.6  
   318.7 -theory TypeRel = Decl:
   318.8 +theory TypeRel imports Decl begin
   318.9  
  318.10  consts
  318.11    widen   :: "(ty    \<times> ty   ) set"  --{* widening *}
   319.1 --- a/src/HOL/NatArith.thy	Fri Jun 17 11:35:35 2005 +0200
   319.2 +++ b/src/HOL/NatArith.thy	Fri Jun 17 16:12:49 2005 +0200
   319.3 @@ -7,7 +7,7 @@
   319.4  
   319.5  theory NatArith
   319.6  imports Nat
   319.7 -files "arith_data.ML"
   319.8 +uses "arith_data.ML"
   319.9  begin
  319.10  
  319.11  setup arith_setup
   320.1 --- a/src/HOL/NumberTheory/BijectionRel.thy	Fri Jun 17 11:35:35 2005 +0200
   320.2 +++ b/src/HOL/NumberTheory/BijectionRel.thy	Fri Jun 17 16:12:49 2005 +0200
   320.3 @@ -6,7 +6,7 @@
   320.4  
   320.5  header {* Bijections between sets *}
   320.6  
   320.7 -theory BijectionRel = Main:
   320.8 +theory BijectionRel imports Main begin
   320.9  
  320.10  text {*
  320.11    Inductive definitions of bijections between two different sets and
   321.1 --- a/src/HOL/NumberTheory/Chinese.thy	Fri Jun 17 11:35:35 2005 +0200
   321.2 +++ b/src/HOL/NumberTheory/Chinese.thy	Fri Jun 17 16:12:49 2005 +0200
   321.3 @@ -6,7 +6,7 @@
   321.4  
   321.5  header {* The Chinese Remainder Theorem *}
   321.6  
   321.7 -theory Chinese = IntPrimes:
   321.8 +theory Chinese imports IntPrimes begin
   321.9  
  321.10  text {*
  321.11    The Chinese Remainder Theorem for an arbitrary finite number of
   322.1 --- a/src/HOL/NumberTheory/Euler.thy	Fri Jun 17 11:35:35 2005 +0200
   322.2 +++ b/src/HOL/NumberTheory/Euler.thy	Fri Jun 17 16:12:49 2005 +0200
   322.3 @@ -5,7 +5,7 @@
   322.4  
   322.5  header {* Euler's criterion *}
   322.6  
   322.7 -theory Euler = Residues + EvenOdd:;
   322.8 +theory Euler imports Residues EvenOdd begin;
   322.9  
  322.10  constdefs
  322.11    MultInvPair :: "int => int => int => int set"
   323.1 --- a/src/HOL/NumberTheory/EulerFermat.thy	Fri Jun 17 11:35:35 2005 +0200
   323.2 +++ b/src/HOL/NumberTheory/EulerFermat.thy	Fri Jun 17 16:12:49 2005 +0200
   323.3 @@ -9,7 +9,7 @@
   323.4  
   323.5  header {* Fermat's Little Theorem extended to Euler's Totient function *}
   323.6  
   323.7 -theory EulerFermat = BijectionRel + IntFact:
   323.8 +theory EulerFermat imports BijectionRel IntFact begin
   323.9  
  323.10  text {*
  323.11    Fermat's Little Theorem extended to Euler's Totient function. More
   324.1 --- a/src/HOL/NumberTheory/EvenOdd.thy	Fri Jun 17 11:35:35 2005 +0200
   324.2 +++ b/src/HOL/NumberTheory/EvenOdd.thy	Fri Jun 17 16:12:49 2005 +0200
   324.3 @@ -5,7 +5,7 @@
   324.4  
   324.5  header {*Parity: Even and Odd Integers*}
   324.6  
   324.7 -theory EvenOdd = Int2:;
   324.8 +theory EvenOdd imports Int2 begin;
   324.9  
  324.10  text{*Note.  This theory is being revised.  See the web page
  324.11  \url{http://www.andrew.cmu.edu/~avigad/isabelle}.*}
   325.1 --- a/src/HOL/NumberTheory/Factorization.thy	Fri Jun 17 11:35:35 2005 +0200
   325.2 +++ b/src/HOL/NumberTheory/Factorization.thy	Fri Jun 17 16:12:49 2005 +0200
   325.3 @@ -6,7 +6,7 @@
   325.4  
   325.5  header {* Fundamental Theorem of Arithmetic (unique factorization into primes) *}
   325.6  
   325.7 -theory Factorization = Primes + Permutation:
   325.8 +theory Factorization imports Primes Permutation begin
   325.9  
  325.10  
  325.11  subsection {* Definitions *}
   326.1 --- a/src/HOL/NumberTheory/Fib.thy	Fri Jun 17 11:35:35 2005 +0200
   326.2 +++ b/src/HOL/NumberTheory/Fib.thy	Fri Jun 17 16:12:49 2005 +0200
   326.3 @@ -5,7 +5,7 @@
   326.4  
   326.5  header {* The Fibonacci function *}
   326.6  
   326.7 -theory Fib = Primes:
   326.8 +theory Fib imports Primes begin
   326.9  
  326.10  text {*
  326.11    Fibonacci numbers: proofs of laws taken from:
   327.1 --- a/src/HOL/NumberTheory/Gauss.thy	Fri Jun 17 11:35:35 2005 +0200
   327.2 +++ b/src/HOL/NumberTheory/Gauss.thy	Fri Jun 17 16:12:49 2005 +0200
   327.3 @@ -5,7 +5,7 @@
   327.4  
   327.5  header {* Gauss' Lemma *}
   327.6  
   327.7 -theory Gauss = Euler:;
   327.8 +theory Gauss imports Euler begin;
   327.9  
  327.10  locale GAUSS =
  327.11    fixes p :: "int"
   328.1 --- a/src/HOL/NumberTheory/Int2.thy	Fri Jun 17 11:35:35 2005 +0200
   328.2 +++ b/src/HOL/NumberTheory/Int2.thy	Fri Jun 17 16:12:49 2005 +0200
   328.3 @@ -5,7 +5,7 @@
   328.4  
   328.5  header {*Integers: Divisibility and Congruences*}
   328.6  
   328.7 -theory Int2 = Finite2 + WilsonRuss:;
   328.8 +theory Int2 imports Finite2 WilsonRuss begin;
   328.9  
  328.10  text{*Note.  This theory is being revised.  See the web page
  328.11  \url{http://www.andrew.cmu.edu/~avigad/isabelle}.*}
   329.1 --- a/src/HOL/NumberTheory/IntFact.thy	Fri Jun 17 11:35:35 2005 +0200
   329.2 +++ b/src/HOL/NumberTheory/IntFact.thy	Fri Jun 17 16:12:49 2005 +0200
   329.3 @@ -6,7 +6,7 @@
   329.4  
   329.5  header {* Factorial on integers *}
   329.6  
   329.7 -theory IntFact = IntPrimes:
   329.8 +theory IntFact imports IntPrimes begin
   329.9  
  329.10  text {*
  329.11    Factorial on integers and recursively defined set including all
   330.1 --- a/src/HOL/NumberTheory/IntPrimes.thy	Fri Jun 17 11:35:35 2005 +0200
   330.2 +++ b/src/HOL/NumberTheory/IntPrimes.thy	Fri Jun 17 16:12:49 2005 +0200
   330.3 @@ -11,7 +11,7 @@
   330.4  
   330.5  header {* Divisibility and prime numbers (on integers) *}
   330.6  
   330.7 -theory IntPrimes = Primes:
   330.8 +theory IntPrimes imports Primes begin
   330.9  
  330.10  text {*
  330.11    The @{text dvd} relation, GCD, Euclid's extended algorithm, primes,
   331.1 --- a/src/HOL/NumberTheory/Residues.thy	Fri Jun 17 11:35:35 2005 +0200
   331.2 +++ b/src/HOL/NumberTheory/Residues.thy	Fri Jun 17 16:12:49 2005 +0200
   331.3 @@ -5,7 +5,7 @@
   331.4  
   331.5  header {* Residue Sets *}
   331.6  
   331.7 -theory Residues = Int2:;
   331.8 +theory Residues imports Int2 begin;
   331.9  
  331.10  text{*Note.  This theory is being revised.  See the web page
  331.11  \url{http://www.andrew.cmu.edu/~avigad/isabelle}.*}
   332.1 --- a/src/HOL/NumberTheory/WilsonBij.thy	Fri Jun 17 11:35:35 2005 +0200
   332.2 +++ b/src/HOL/NumberTheory/WilsonBij.thy	Fri Jun 17 16:12:49 2005 +0200
   332.3 @@ -6,7 +6,7 @@
   332.4  
   332.5  header {* Wilson's Theorem using a more abstract approach *}
   332.6  
   332.7 -theory WilsonBij = BijectionRel + IntFact:
   332.8 +theory WilsonBij imports BijectionRel IntFact begin
   332.9  
  332.10  text {*
  332.11    Wilson's Theorem using a more ``abstract'' approach based on
   333.1 --- a/src/HOL/NumberTheory/WilsonRuss.thy	Fri Jun 17 11:35:35 2005 +0200
   333.2 +++ b/src/HOL/NumberTheory/WilsonRuss.thy	Fri Jun 17 16:12:49 2005 +0200
   333.3 @@ -9,7 +9,7 @@
   333.4  
   333.5  header {* Wilson's Theorem according to Russinoff *}
   333.6  
   333.7 -theory WilsonRuss = EulerFermat:
   333.8 +theory WilsonRuss imports EulerFermat begin
   333.9  
  333.10  text {*
  333.11    Wilson's Theorem following quite closely Russinoff's approach
   334.1 --- a/src/HOL/OrderedGroup.thy	Fri Jun 17 11:35:35 2005 +0200
   334.2 +++ b/src/HOL/OrderedGroup.thy	Fri Jun 17 16:12:49 2005 +0200
   334.3 @@ -7,7 +7,7 @@
   334.4  
   334.5  theory OrderedGroup
   334.6  imports Inductive LOrder
   334.7 -files "../Provers/Arith/abel_cancel.ML"
   334.8 +uses "../Provers/Arith/abel_cancel.ML"
   334.9  begin
  334.10  
  334.11  text {*
   335.1 --- a/src/HOL/Orderings.thy	Fri Jun 17 11:35:35 2005 +0200
   335.2 +++ b/src/HOL/Orderings.thy	Fri Jun 17 16:12:49 2005 +0200
   335.3 @@ -9,7 +9,7 @@
   335.4  
   335.5  theory Orderings
   335.6  imports Lattice_Locales
   335.7 -files ("antisym_setup.ML")
   335.8 +uses ("antisym_setup.ML")
   335.9  begin
  335.10  
  335.11  subsection {* Order signatures and orders *}
   336.1 --- a/src/HOL/Presburger.thy	Fri Jun 17 11:35:35 2005 +0200
   336.2 +++ b/src/HOL/Presburger.thy	Fri Jun 17 16:12:49 2005 +0200
   336.3 @@ -10,7 +10,7 @@
   336.4  
   336.5  theory Presburger
   336.6  imports NatSimprocs SetInterval
   336.7 -files ("cooper_dec.ML") ("cooper_proof.ML") ("qelim.ML") ("presburger.ML")
   336.8 +uses ("cooper_dec.ML") ("cooper_proof.ML") ("qelim.ML") ("presburger.ML")
   336.9  begin
  336.10  
  336.11  text {* Theorem for unitifying the coeffitients of @{text x} in an existential formula*}
   337.1 --- a/src/HOL/Product_Type.thy	Fri Jun 17 11:35:35 2005 +0200
   337.2 +++ b/src/HOL/Product_Type.thy	Fri Jun 17 16:12:49 2005 +0200
   337.3 @@ -8,7 +8,7 @@
   337.4  
   337.5  theory Product_Type
   337.6  imports Fun
   337.7 -files ("Tools/split_rule.ML")
   337.8 +uses ("Tools/split_rule.ML")
   337.9  begin
  337.10  
  337.11  subsection {* Unit *}
   338.1 --- a/src/HOL/Real/HahnBanach/Bounds.thy	Fri Jun 17 11:35:35 2005 +0200
   338.2 +++ b/src/HOL/Real/HahnBanach/Bounds.thy	Fri Jun 17 16:12:49 2005 +0200
   338.3 @@ -5,7 +5,7 @@
   338.4  
   338.5  header {* Bounds *}
   338.6  
   338.7 -theory Bounds = Main + Real:
   338.8 +theory Bounds imports Main Real begin
   338.9  
  338.10  locale lub =
  338.11    fixes A and x
   339.1 --- a/src/HOL/Real/HahnBanach/FunctionNorm.thy	Fri Jun 17 11:35:35 2005 +0200
   339.2 +++ b/src/HOL/Real/HahnBanach/FunctionNorm.thy	Fri Jun 17 16:12:49 2005 +0200
   339.3 @@ -5,7 +5,7 @@
   339.4  
   339.5  header {* The norm of a function *}
   339.6  
   339.7 -theory FunctionNorm = NormedSpace + FunctionOrder:
   339.8 +theory FunctionNorm imports NormedSpace FunctionOrder begin
   339.9  
  339.10  subsection {* Continuous linear forms*}
  339.11  
   340.1 --- a/src/HOL/Real/HahnBanach/FunctionOrder.thy	Fri Jun 17 11:35:35 2005 +0200
   340.2 +++ b/src/HOL/Real/HahnBanach/FunctionOrder.thy	Fri Jun 17 16:12:49 2005 +0200
   340.3 @@ -5,7 +5,7 @@
   340.4  
   340.5  header {* An order on functions *}
   340.6  
   340.7 -theory FunctionOrder = Subspace + Linearform:
   340.8 +theory FunctionOrder imports Subspace Linearform begin
   340.9  
  340.10  subsection {* The graph of a function *}
  340.11  
   341.1 --- a/src/HOL/Real/HahnBanach/HahnBanach.thy	Fri Jun 17 11:35:35 2005 +0200
   341.2 +++ b/src/HOL/Real/HahnBanach/HahnBanach.thy	Fri Jun 17 16:12:49 2005 +0200
   341.3 @@ -5,7 +5,7 @@
   341.4  
   341.5  header {* The Hahn-Banach Theorem *}
   341.6  
   341.7 -theory HahnBanach = HahnBanachLemmas:
   341.8 +theory HahnBanach imports HahnBanachLemmas begin
   341.9  
  341.10  text {*
  341.11    We present the proof of two different versions of the Hahn-Banach
   342.1 --- a/src/HOL/Real/HahnBanach/HahnBanachExtLemmas.thy	Fri Jun 17 11:35:35 2005 +0200
   342.2 +++ b/src/HOL/Real/HahnBanach/HahnBanachExtLemmas.thy	Fri Jun 17 16:12:49 2005 +0200
   342.3 @@ -5,7 +5,7 @@
   342.4  
   342.5  header {* Extending non-maximal functions *}
   342.6  
   342.7 -theory HahnBanachExtLemmas = FunctionNorm:
   342.8 +theory HahnBanachExtLemmas imports FunctionNorm begin
   342.9  
  342.10  text {*
  342.11    In this section the following context is presumed.  Let @{text E} be
   343.1 --- a/src/HOL/Real/HahnBanach/HahnBanachLemmas.thy	Fri Jun 17 11:35:35 2005 +0200
   343.2 +++ b/src/HOL/Real/HahnBanach/HahnBanachLemmas.thy	Fri Jun 17 16:12:49 2005 +0200
   343.3 @@ -1,4 +1,4 @@
   343.4  (*<*)
   343.5 -theory HahnBanachLemmas = HahnBanachSupLemmas + HahnBanachExtLemmas:
   343.6 +theory HahnBanachLemmas imports HahnBanachSupLemmas HahnBanachExtLemmas begin
   343.7  end
   343.8  (*>*)
   343.9 \ No newline at end of file
   344.1 --- a/src/HOL/Real/HahnBanach/HahnBanachSupLemmas.thy	Fri Jun 17 11:35:35 2005 +0200
   344.2 +++ b/src/HOL/Real/HahnBanach/HahnBanachSupLemmas.thy	Fri Jun 17 16:12:49 2005 +0200
   344.3 @@ -5,7 +5,7 @@
   344.4  
   344.5  header {* The supremum w.r.t.~the function order *}
   344.6  
   344.7 -theory HahnBanachSupLemmas = FunctionNorm + ZornLemma:
   344.8 +theory HahnBanachSupLemmas imports FunctionNorm ZornLemma begin
   344.9  
  344.10  text {*
  344.11    This section contains some lemmas that will be used in the proof of
   345.1 --- a/src/HOL/Real/HahnBanach/Linearform.thy	Fri Jun 17 11:35:35 2005 +0200
   345.2 +++ b/src/HOL/Real/HahnBanach/Linearform.thy	Fri Jun 17 16:12:49 2005 +0200
   345.3 @@ -5,7 +5,7 @@
   345.4  
   345.5  header {* Linearforms *}
   345.6  
   345.7 -theory Linearform = VectorSpace:
   345.8 +theory Linearform imports VectorSpace begin
   345.9  
  345.10  text {*
  345.11    A \emph{linear form} is a function on a vector space into the reals
   346.1 --- a/src/HOL/Real/HahnBanach/NormedSpace.thy	Fri Jun 17 11:35:35 2005 +0200
   346.2 +++ b/src/HOL/Real/HahnBanach/NormedSpace.thy	Fri Jun 17 16:12:49 2005 +0200
   346.3 @@ -5,7 +5,7 @@
   346.4  
   346.5  header {* Normed vector spaces *}
   346.6  
   346.7 -theory NormedSpace =  Subspace:
   346.8 +theory NormedSpace imports  Subspace begin
   346.9  
  346.10  subsection {* Quasinorms *}
  346.11  
   347.1 --- a/src/HOL/Real/HahnBanach/Subspace.thy	Fri Jun 17 11:35:35 2005 +0200
   347.2 +++ b/src/HOL/Real/HahnBanach/Subspace.thy	Fri Jun 17 16:12:49 2005 +0200
   347.3 @@ -5,7 +5,7 @@
   347.4  
   347.5  header {* Subspaces *}
   347.6  
   347.7 -theory Subspace = VectorSpace:
   347.8 +theory Subspace imports VectorSpace begin
   347.9  
  347.10  
  347.11  subsection {* Definition *}
   348.1 --- a/src/HOL/Real/HahnBanach/VectorSpace.thy	Fri Jun 17 11:35:35 2005 +0200
   348.2 +++ b/src/HOL/Real/HahnBanach/VectorSpace.thy	Fri Jun 17 16:12:49 2005 +0200
   348.3 @@ -5,7 +5,7 @@
   348.4  
   348.5  header {* Vector spaces *}
   348.6  
   348.7 -theory VectorSpace = Real + Bounds + Zorn:
   348.8 +theory VectorSpace imports Real Bounds Zorn begin
   348.9  
  348.10  subsection {* Signature *}
  348.11  
   349.1 --- a/src/HOL/Real/HahnBanach/ZornLemma.thy	Fri Jun 17 11:35:35 2005 +0200
   349.2 +++ b/src/HOL/Real/HahnBanach/ZornLemma.thy	Fri Jun 17 16:12:49 2005 +0200
   349.3 @@ -5,7 +5,7 @@
   349.4  
   349.5  header {* Zorn's Lemma *}
   349.6  
   349.7 -theory ZornLemma = Zorn:
   349.8 +theory ZornLemma imports Zorn begin
   349.9  
  349.10  text {*
  349.11    Zorn's Lemmas states: if every linear ordered subset of an ordered
   350.1 --- a/src/HOL/Real/Rational.thy	Fri Jun 17 11:35:35 2005 +0200
   350.2 +++ b/src/HOL/Real/Rational.thy	Fri Jun 17 16:12:49 2005 +0200
   350.3 @@ -7,7 +7,7 @@
   350.4  
   350.5  theory Rational
   350.6  imports Quotient
   350.7 -files ("rat_arith.ML")
   350.8 +uses ("rat_arith.ML")
   350.9  begin
  350.10  
  350.11  subsection {* Fractions *}
   351.1 --- a/src/HOL/Real/RealDef.thy	Fri Jun 17 11:35:35 2005 +0200
   351.2 +++ b/src/HOL/Real/RealDef.thy	Fri Jun 17 16:12:49 2005 +0200
   351.3 @@ -9,7 +9,7 @@
   351.4  
   351.5  theory RealDef
   351.6  imports PReal
   351.7 -files ("real_arith.ML")
   351.8 +uses ("real_arith.ML")
   351.9  begin
  351.10  
  351.11  constdefs
   352.1 --- a/src/HOL/Recdef.thy	Fri Jun 17 11:35:35 2005 +0200
   352.2 +++ b/src/HOL/Recdef.thy	Fri Jun 17 16:12:49 2005 +0200
   352.3 @@ -7,7 +7,7 @@
   352.4  
   352.5  theory Recdef
   352.6  imports Wellfounded_Relations Datatype
   352.7 -files
   352.8 +uses
   352.9    ("../TFL/casesplit.ML")
  352.10    ("../TFL/utils.ML")
  352.11    ("../TFL/usyntax.ML")
   353.1 --- a/src/HOL/Reconstruction.thy	Fri Jun 17 11:35:35 2005 +0200
   353.2 +++ b/src/HOL/Reconstruction.thy	Fri Jun 17 16:12:49 2005 +0200
   353.3 @@ -8,7 +8,7 @@
   353.4  
   353.5  theory Reconstruction
   353.6      imports Hilbert_Choice Map Infinite_Set Extraction
   353.7 -    files "Tools/res_lib.ML"
   353.8 +    uses "Tools/res_lib.ML"
   353.9  	  "Tools/res_clause.ML"
  353.10  	  "Tools/res_skolem_function.ML"
  353.11  	  "Tools/res_axioms.ML"
   354.1 --- a/src/HOL/Record.thy	Fri Jun 17 11:35:35 2005 +0200
   354.2 +++ b/src/HOL/Record.thy	Fri Jun 17 16:12:49 2005 +0200
   354.3 @@ -5,7 +5,7 @@
   354.4  
   354.5  theory Record
   354.6  imports Product_Type
   354.7 -files ("Tools/record_package.ML")
   354.8 +uses ("Tools/record_package.ML")
   354.9  begin
  354.10  
  354.11  ML {*
   355.1 --- a/src/HOL/Refute.thy	Fri Jun 17 11:35:35 2005 +0200
   355.2 +++ b/src/HOL/Refute.thy	Fri Jun 17 16:12:49 2005 +0200
   355.3 @@ -10,7 +10,7 @@
   355.4  
   355.5  theory Refute
   355.6  imports Map
   355.7 -files "Tools/prop_logic.ML"
   355.8 +uses "Tools/prop_logic.ML"
   355.9        "Tools/sat_solver.ML"
  355.10        "Tools/refute.ML"
  355.11        "Tools/refute_isar.ML"
   356.1 --- a/src/HOL/SET-Protocol/Cardholder_Registration.thy	Fri Jun 17 11:35:35 2005 +0200
   356.2 +++ b/src/HOL/SET-Protocol/Cardholder_Registration.thy	Fri Jun 17 16:12:49 2005 +0200
   356.3 @@ -6,7 +6,7 @@
   356.4  
   356.5  header{*The SET Cardholder Registration Protocol*}
   356.6  
   356.7 -theory Cardholder_Registration = PublicSET:
   356.8 +theory Cardholder_Registration imports PublicSET begin
   356.9  
  356.10  text{*Note: nonces seem to consist of 20 bytes.  That includes both freshness
  356.11  challenges (Chall-EE, etc.) and important secrets (CardSecret, PANsecret)
   357.1 --- a/src/HOL/SET-Protocol/EventSET.thy	Fri Jun 17 11:35:35 2005 +0200
   357.2 +++ b/src/HOL/SET-Protocol/EventSET.thy	Fri Jun 17 16:12:49 2005 +0200
   357.3 @@ -5,7 +5,7 @@
   357.4  
   357.5  header{*Theory of Events for SET*}
   357.6  
   357.7 -theory EventSET = MessageSET:
   357.8 +theory EventSET imports MessageSET begin
   357.9  
  357.10  text{*The Root Certification Authority*}
  357.11  syntax        RCA :: agent
   358.1 --- a/src/HOL/SET-Protocol/Merchant_Registration.thy	Fri Jun 17 11:35:35 2005 +0200
   358.2 +++ b/src/HOL/SET-Protocol/Merchant_Registration.thy	Fri Jun 17 16:12:49 2005 +0200
   358.3 @@ -5,7 +5,7 @@
   358.4  
   358.5  header{*The SET Merchant Registration Protocol*}
   358.6  
   358.7 -theory Merchant_Registration = PublicSET:
   358.8 +theory Merchant_Registration imports PublicSET begin
   358.9  
  358.10  text{*Copmpared with Cardholder Reigstration, @{text KeyCryptKey} is not
  358.11    needed: no session key encrypts another.  Instead we
   359.1 --- a/src/HOL/SET-Protocol/MessageSET.thy	Fri Jun 17 11:35:35 2005 +0200
   359.2 +++ b/src/HOL/SET-Protocol/MessageSET.thy	Fri Jun 17 16:12:49 2005 +0200
   359.3 @@ -5,7 +5,7 @@
   359.4  
   359.5  header{*The Message Theory, Modified for SET*}
   359.6  
   359.7 -theory MessageSET = NatPair:
   359.8 +theory MessageSET imports NatPair begin
   359.9  
  359.10  subsection{*General Lemmas*}
  359.11  
   360.1 --- a/src/HOL/SET-Protocol/PublicSET.thy	Fri Jun 17 11:35:35 2005 +0200
   360.2 +++ b/src/HOL/SET-Protocol/PublicSET.thy	Fri Jun 17 16:12:49 2005 +0200
   360.3 @@ -5,7 +5,7 @@
   360.4  
   360.5  header{*The Public-Key Theory, Modified for SET*}
   360.6  
   360.7 -theory PublicSET = EventSET:
   360.8 +theory PublicSET imports EventSET begin
   360.9  
  360.10  subsection{*Symmetric and Asymmetric Keys*}
  360.11  
   361.1 --- a/src/HOL/SET-Protocol/Purchase.thy	Fri Jun 17 11:35:35 2005 +0200
   361.2 +++ b/src/HOL/SET-Protocol/Purchase.thy	Fri Jun 17 16:12:49 2005 +0200
   361.3 @@ -5,7 +5,7 @@
   361.4  
   361.5  header{*Purchase Phase of SET*}
   361.6  
   361.7 -theory Purchase = PublicSET:
   361.8 +theory Purchase imports PublicSET begin
   361.9  
  361.10  text{*
  361.11  Note: nonces seem to consist of 20 bytes.  That includes both freshness
   362.1 --- a/src/HOL/TLA/Memory/RPCMemoryParams.thy	Fri Jun 17 11:35:35 2005 +0200
   362.2 +++ b/src/HOL/TLA/Memory/RPCMemoryParams.thy	Fri Jun 17 16:12:49 2005 +0200
   362.3 @@ -9,7 +9,7 @@
   362.4      Basic declarations for the RPC-memory example.
   362.5  *)
   362.6  
   362.7 -theory RPCMemoryParams = Main:
   362.8 +theory RPCMemoryParams imports Main begin
   362.9  
  362.10  types
  362.11    bit = "bool"   (* Signal wires for the procedure interface.
   363.1 --- a/src/HOL/Transitive_Closure.thy	Fri Jun 17 11:35:35 2005 +0200
   363.2 +++ b/src/HOL/Transitive_Closure.thy	Fri Jun 17 16:12:49 2005 +0200
   363.3 @@ -8,7 +8,7 @@
   363.4  
   363.5  theory Transitive_Closure
   363.6  imports Inductive
   363.7 -files ("../Provers/trancl.ML")
   363.8 +uses ("../Provers/trancl.ML")
   363.9  begin
  363.10  
  363.11  text {*
   364.1 --- a/src/HOL/Typedef.thy	Fri Jun 17 11:35:35 2005 +0200
   364.2 +++ b/src/HOL/Typedef.thy	Fri Jun 17 16:12:49 2005 +0200
   364.3 @@ -7,7 +7,7 @@
   364.4  
   364.5  theory Typedef
   364.6  imports Set
   364.7 -files ("Tools/typedef_package.ML")
   364.8 +uses ("Tools/typedef_package.ML")
   364.9  begin
  364.10  
  364.11  locale type_definition =
   365.1 --- a/src/HOL/UNITY/Comp.thy	Fri Jun 17 11:35:35 2005 +0200
   365.2 +++ b/src/HOL/UNITY/Comp.thy	Fri Jun 17 16:12:49 2005 +0200
   365.3 @@ -15,7 +15,7 @@
   365.4  
   365.5  header{*Composition: Basic Primitives*}
   365.6  
   365.7 -theory Comp = Union:
   365.8 +theory Comp imports Union begin
   365.9  
  365.10  instance program :: (type) ord ..
  365.11  
   366.1 --- a/src/HOL/UNITY/Comp/AllocBase.thy	Fri Jun 17 11:35:35 2005 +0200
   366.2 +++ b/src/HOL/UNITY/Comp/AllocBase.thy	Fri Jun 17 16:12:49 2005 +0200
   366.3 @@ -7,7 +7,7 @@
   366.4  
   366.5  header{*Common Declarations for Chandy and Charpentier's Allocator*}
   366.6  
   366.7 -theory AllocBase = UNITY_Main:
   366.8 +theory AllocBase imports UNITY_Main begin
   366.9  
  366.10  consts
  366.11    NbT      :: nat       (*Number of tokens in system*)
   367.1 --- a/src/HOL/UNITY/Comp/AllocImpl.thy	Fri Jun 17 11:35:35 2005 +0200
   367.2 +++ b/src/HOL/UNITY/Comp/AllocImpl.thy	Fri Jun 17 16:12:49 2005 +0200
   367.3 @@ -6,7 +6,7 @@
   367.4  
   367.5  header{*Implementation of a multiple-client allocator from a single-client allocator*}
   367.6  
   367.7 -theory AllocImpl = AllocBase + Follows + PPROD:
   367.8 +theory AllocImpl imports AllocBase Follows PPROD begin
   367.9  
  367.10  
  367.11  (** State definitions.  OUTPUT variables are locals **)
   368.1 --- a/src/HOL/UNITY/Comp/Client.thy	Fri Jun 17 11:35:35 2005 +0200
   368.2 +++ b/src/HOL/UNITY/Comp/Client.thy	Fri Jun 17 16:12:49 2005 +0200
   368.3 @@ -6,7 +6,7 @@
   368.4  
   368.5  header{*Distributed Resource Management System: the Client*}
   368.6  
   368.7 -theory Client = Rename + AllocBase:
   368.8 +theory Client imports Rename AllocBase begin
   368.9  
  368.10  types
  368.11    tokbag = nat	   --{*tokbags could be multisets...or any ordered type?*}
   369.1 --- a/src/HOL/UNITY/Comp/Counter.thy	Fri Jun 17 11:35:35 2005 +0200
   369.2 +++ b/src/HOL/UNITY/Comp/Counter.thy	Fri Jun 17 16:12:49 2005 +0200
   369.3 @@ -11,7 +11,7 @@
   369.4  
   369.5  header{*A Family of Similar Counters: Original Version*}
   369.6  
   369.7 -theory Counter = UNITY_Main:
   369.8 +theory Counter imports UNITY_Main begin
   369.9  
  369.10  (* Variables are names *)
  369.11  datatype name = C | c nat
   370.1 --- a/src/HOL/UNITY/Comp/Counterc.thy	Fri Jun 17 11:35:35 2005 +0200
   370.2 +++ b/src/HOL/UNITY/Comp/Counterc.thy	Fri Jun 17 16:12:49 2005 +0200
   370.3 @@ -13,7 +13,7 @@
   370.4  
   370.5  header{*A Family of Similar Counters: Version with Compatibility*}
   370.6  
   370.7 -theory Counterc =  UNITY_Main:
   370.8 +theory Counterc imports  UNITY_Main begin
   370.9  
  370.10  typedecl state
  370.11  arities state :: type
   371.1 --- a/src/HOL/UNITY/Comp/Handshake.thy	Fri Jun 17 11:35:35 2005 +0200
   371.2 +++ b/src/HOL/UNITY/Comp/Handshake.thy	Fri Jun 17 16:12:49 2005 +0200
   371.3 @@ -8,7 +8,7 @@
   371.4  From Misra, "Asynchronous Compositions of Programs", Section 5.3.2
   371.5  *)
   371.6  
   371.7 -theory Handshake = UNITY_Main:
   371.8 +theory Handshake imports UNITY_Main begin
   371.9  
  371.10  record state =
  371.11    BB :: bool
   372.1 --- a/src/HOL/UNITY/Comp/Priority.thy	Fri Jun 17 11:35:35 2005 +0200
   372.2 +++ b/src/HOL/UNITY/Comp/Priority.thy	Fri Jun 17 16:12:49 2005 +0200
   372.3 @@ -6,7 +6,7 @@
   372.4  
   372.5  header{*The priority system*}
   372.6  
   372.7 -theory Priority = PriorityAux:
   372.8 +theory Priority imports PriorityAux begin
   372.9  
  372.10  text{*From Charpentier and Chandy,
  372.11  Examples of Program Composition Illustrating the Use of Universal Properties
   373.1 --- a/src/HOL/UNITY/Comp/Progress.thy	Fri Jun 17 11:35:35 2005 +0200
   373.2 +++ b/src/HOL/UNITY/Comp/Progress.thy	Fri Jun 17 16:12:49 2005 +0200
   373.3 @@ -8,7 +8,7 @@
   373.4  
   373.5  header{*Progress Set Examples*}
   373.6  
   373.7 -theory Progress = UNITY_Main:
   373.8 +theory Progress imports UNITY_Main begin
   373.9  
  373.10  subsection {*The Composition of Two Single-Assignment Programs*}
  373.11  text{*Thesis Section 4.4.2*}
   374.1 --- a/src/HOL/UNITY/Comp/TimerArray.thy	Fri Jun 17 11:35:35 2005 +0200
   374.2 +++ b/src/HOL/UNITY/Comp/TimerArray.thy	Fri Jun 17 16:12:49 2005 +0200
   374.3 @@ -6,7 +6,7 @@
   374.4  A trivial example of reasoning about an array of processes
   374.5  *)
   374.6  
   374.7 -theory TimerArray = UNITY_Main:
   374.8 +theory TimerArray imports UNITY_Main begin
   374.9  
  374.10  types 'a state = "nat * 'a"   (*second component allows new variables*)
  374.11  
   375.1 --- a/src/HOL/UNITY/Constrains.thy	Fri Jun 17 11:35:35 2005 +0200
   375.2 +++ b/src/HOL/UNITY/Constrains.thy	Fri Jun 17 16:12:49 2005 +0200
   375.3 @@ -8,7 +8,7 @@
   375.4  
   375.5  header{*Weak Safety*}
   375.6  
   375.7 -theory Constrains = UNITY:
   375.8 +theory Constrains imports UNITY begin
   375.9  
  375.10  consts traces :: "['a set, ('a * 'a)set set] => ('a * 'a list) set"
  375.11  
   376.1 --- a/src/HOL/UNITY/Detects.thy	Fri Jun 17 11:35:35 2005 +0200
   376.2 +++ b/src/HOL/UNITY/Detects.thy	Fri Jun 17 16:12:49 2005 +0200
   376.3 @@ -8,7 +8,7 @@
   376.4  
   376.5  header{*The Detects Relation*}
   376.6  
   376.7 -theory Detects = FP + SubstAx:
   376.8 +theory Detects imports FP SubstAx begin
   376.9  
  376.10  consts
  376.11     op_Detects  :: "['a set, 'a set] => 'a program set"  (infixl "Detects" 60)
   377.1 --- a/src/HOL/UNITY/ELT.thy	Fri Jun 17 11:35:35 2005 +0200
   377.2 +++ b/src/HOL/UNITY/ELT.thy	Fri Jun 17 16:12:49 2005 +0200
   377.3 @@ -24,7 +24,7 @@
   377.4  
   377.5  header{*Progress Under Allowable Sets*}
   377.6  
   377.7 -theory ELT = Project:
   377.8 +theory ELT imports Project begin
   377.9  
  377.10  consts
  377.11  
   378.1 --- a/src/HOL/UNITY/Extend.thy	Fri Jun 17 11:35:35 2005 +0200
   378.2 +++ b/src/HOL/UNITY/Extend.thy	Fri Jun 17 16:12:49 2005 +0200
   378.3 @@ -10,7 +10,7 @@
   378.4  
   378.5  header{*Extending State Sets*}
   378.6  
   378.7 -theory Extend = Guar:
   378.8 +theory Extend imports Guar begin
   378.9  
  378.10  constdefs
  378.11  
   379.1 --- a/src/HOL/UNITY/FP.thy	Fri Jun 17 11:35:35 2005 +0200
   379.2 +++ b/src/HOL/UNITY/FP.thy	Fri Jun 17 16:12:49 2005 +0200
   379.3 @@ -8,7 +8,7 @@
   379.4  
   379.5  header{*Fixed Point of a Program*}
   379.6  
   379.7 -theory FP = UNITY:
   379.8 +theory FP imports UNITY begin
   379.9  
  379.10  constdefs
  379.11  
   380.1 --- a/src/HOL/UNITY/Follows.thy	Fri Jun 17 11:35:35 2005 +0200
   380.2 +++ b/src/HOL/UNITY/Follows.thy	Fri Jun 17 16:12:49 2005 +0200
   380.3 @@ -6,7 +6,7 @@
   380.4  
   380.5  header{*The Follows Relation of Charpentier and Sivilotte*}
   380.6  
   380.7 -theory Follows = SubstAx + ListOrder + Multiset:
   380.8 +theory Follows imports SubstAx ListOrder Multiset begin
   380.9  
  380.10  constdefs
  380.11  
   381.1 --- a/src/HOL/UNITY/Guar.thy	Fri Jun 17 11:35:35 2005 +0200
   381.2 +++ b/src/HOL/UNITY/Guar.thy	Fri Jun 17 16:12:49 2005 +0200
   381.3 @@ -18,7 +18,7 @@
   381.4  
   381.5  header{*Guarantees Specifications*}
   381.6  
   381.7 -theory Guar = Comp:
   381.8 +theory Guar imports Comp begin
   381.9  
  381.10  instance program :: (type) order
  381.11    by (intro_classes,
   382.1 --- a/src/HOL/UNITY/Lift_prog.thy	Fri Jun 17 11:35:35 2005 +0200
   382.2 +++ b/src/HOL/UNITY/Lift_prog.thy	Fri Jun 17 16:12:49 2005 +0200
   382.3 @@ -8,7 +8,7 @@
   382.4  
   382.5  header{*Replication of Components*}
   382.6  
   382.7 -theory Lift_prog = Rename:
   382.8 +theory Lift_prog imports Rename begin
   382.9  
  382.10  constdefs
  382.11  
   383.1 --- a/src/HOL/UNITY/ListOrder.thy	Fri Jun 17 11:35:35 2005 +0200
   383.2 +++ b/src/HOL/UNITY/ListOrder.thy	Fri Jun 17 16:12:49 2005 +0200
   383.3 @@ -15,7 +15,7 @@
   383.4  
   383.5  header {*The Prefix Ordering on Lists*}
   383.6  
   383.7 -theory ListOrder = Main:
   383.8 +theory ListOrder imports Main begin
   383.9  
  383.10  consts
  383.11    genPrefix :: "('a * 'a)set => ('a list * 'a list)set"
   384.1 --- a/src/HOL/UNITY/PPROD.thy	Fri Jun 17 11:35:35 2005 +0200
   384.2 +++ b/src/HOL/UNITY/PPROD.thy	Fri Jun 17 16:12:49 2005 +0200
   384.3 @@ -9,7 +9,7 @@
   384.4  Some dead wood here!
   384.5  *)
   384.6  
   384.7 -theory PPROD = Lift_prog:
   384.8 +theory PPROD imports Lift_prog begin
   384.9  
  384.10  constdefs
  384.11  
   385.1 --- a/src/HOL/UNITY/ProgressSets.thy	Fri Jun 17 11:35:35 2005 +0200
   385.2 +++ b/src/HOL/UNITY/ProgressSets.thy	Fri Jun 17 16:12:49 2005 +0200
   385.3 @@ -16,7 +16,7 @@
   385.4  
   385.5  header{*Progress Sets*}
   385.6  
   385.7 -theory ProgressSets = Transformers:
   385.8 +theory ProgressSets imports Transformers begin
   385.9  
  385.10  subsection {*Complete Lattices and the Operator @{term cl}*}
  385.11  
   386.1 --- a/src/HOL/UNITY/Project.thy	Fri Jun 17 11:35:35 2005 +0200
   386.2 +++ b/src/HOL/UNITY/Project.thy	Fri Jun 17 16:12:49 2005 +0200
   386.3 @@ -10,7 +10,7 @@
   386.4  
   386.5  header{*Projections of State Sets*}
   386.6  
   386.7 -theory Project = Extend:
   386.8 +theory Project imports Extend begin
   386.9  
  386.10  constdefs
  386.11    projecting :: "['c program => 'c set, 'a*'b => 'c, 
   387.1 --- a/src/HOL/UNITY/Rename.thy	Fri Jun 17 11:35:35 2005 +0200
   387.2 +++ b/src/HOL/UNITY/Rename.thy	Fri Jun 17 16:12:49 2005 +0200
   387.3 @@ -6,7 +6,7 @@
   387.4  
   387.5  header{*Renaming of State Sets*}
   387.6  
   387.7 -theory Rename = Extend:
   387.8 +theory Rename imports Extend begin
   387.9  
  387.10  constdefs
  387.11    
   388.1 --- a/src/HOL/UNITY/Simple/Channel.thy	Fri Jun 17 11:35:35 2005 +0200
   388.2 +++ b/src/HOL/UNITY/Simple/Channel.thy	Fri Jun 17 16:12:49 2005 +0200
   388.3 @@ -8,7 +8,7 @@
   388.4  From Misra, "A Logic for Concurrent Programming" (1994), section 13.3
   388.5  *)
   388.6  
   388.7 -theory Channel = UNITY_Main:
   388.8 +theory Channel imports UNITY_Main begin
   388.9  
  388.10  types state = "nat set"
  388.11  
   389.1 --- a/src/HOL/UNITY/Simple/Common.thy	Fri Jun 17 11:35:35 2005 +0200
   389.2 +++ b/src/HOL/UNITY/Simple/Common.thy	Fri Jun 17 16:12:49 2005 +0200
   389.3 @@ -10,7 +10,7 @@
   389.4  From Misra, "A Logic for Concurrent Programming" (1994), sections 5.1 and 13.1.
   389.5  *)
   389.6  
   389.7 -theory Common = UNITY_Main:
   389.8 +theory Common imports UNITY_Main begin
   389.9  
  389.10  consts
  389.11    ftime :: "nat=>nat"
   390.1 --- a/src/HOL/UNITY/Simple/Deadlock.thy	Fri Jun 17 11:35:35 2005 +0200
   390.2 +++ b/src/HOL/UNITY/Simple/Deadlock.thy	Fri Jun 17 16:12:49 2005 +0200
   390.3 @@ -7,7 +7,7 @@
   390.4      Misra, "A Logic for Concurrent Programming", 1994
   390.5  *)
   390.6  
   390.7 -theory Deadlock = UNITY:
   390.8 +theory Deadlock imports UNITY begin
   390.9  
  390.10  (*Trivial, two-process case*)
  390.11  lemma "[| F \<in> (A \<inter> B) co A;  F \<in> (B \<inter> A) co B |] ==> F \<in> stable (A \<inter> B)"
   391.1 --- a/src/HOL/UNITY/Simple/Mutex.thy	Fri Jun 17 11:35:35 2005 +0200
   391.2 +++ b/src/HOL/UNITY/Simple/Mutex.thy	Fri Jun 17 16:12:49 2005 +0200
   391.3 @@ -6,7 +6,7 @@
   391.4  Based on "A Family of 2-Process Mutual Exclusion Algorithms" by J Misra
   391.5  *)
   391.6  
   391.7 -theory Mutex = UNITY_Main:
   391.8 +theory Mutex imports UNITY_Main begin
   391.9  
  391.10  record state =
  391.11    p :: bool
   392.1 --- a/src/HOL/UNITY/Simple/NSP_Bad.thy	Fri Jun 17 11:35:35 2005 +0200
   392.2 +++ b/src/HOL/UNITY/Simple/NSP_Bad.thy	Fri Jun 17 16:12:49 2005 +0200
   392.3 @@ -10,7 +10,7 @@
   392.4  
   392.5  header{*Analyzing the Needham-Schroeder Public-Key Protocol in UNITY*}
   392.6  
   392.7 -theory NSP_Bad = Public + UNITY_Main:
   392.8 +theory NSP_Bad imports Public UNITY_Main begin
   392.9  
  392.10  text{*This is the flawed version, vulnerable to Lowe's attack.
  392.11  From page 260 of
   393.1 --- a/src/HOL/UNITY/Simple/Network.thy	Fri Jun 17 11:35:35 2005 +0200
   393.2 +++ b/src/HOL/UNITY/Simple/Network.thy	Fri Jun 17 16:12:49 2005 +0200
   393.3 @@ -8,7 +8,7 @@
   393.4  From Misra, "A Logic for Concurrent Programming" (1994), section 5.7
   393.5  *)
   393.6  
   393.7 -theory Network = UNITY:
   393.8 +theory Network imports UNITY begin
   393.9  
  393.10  (*The state assigns a number to each process variable*)
  393.11  
   394.1 --- a/src/HOL/UNITY/Simple/Reach.thy	Fri Jun 17 11:35:35 2005 +0200
   394.2 +++ b/src/HOL/UNITY/Simple/Reach.thy	Fri Jun 17 16:12:49 2005 +0200
   394.3 @@ -7,7 +7,7 @@
   394.4  	[this example took only four days!]
   394.5  *)
   394.6  
   394.7 -theory Reach = UNITY_Main:
   394.8 +theory Reach imports UNITY_Main begin
   394.9  
  394.10  typedecl vertex
  394.11  
   395.1 --- a/src/HOL/UNITY/Simple/Reachability.thy	Fri Jun 17 11:35:35 2005 +0200
   395.2 +++ b/src/HOL/UNITY/Simple/Reachability.thy	Fri Jun 17 16:12:49 2005 +0200
   395.3 @@ -8,7 +8,7 @@
   395.4  From Chandy and Misra, "Parallel Program Design" (1989), sections 6.2 and 11.3
   395.5  *)
   395.6  
   395.7 -theory Reachability = Detects + Reach:
   395.8 +theory Reachability imports Detects Reach begin
   395.9  
  395.10  types  edge = "(vertex*vertex)"
  395.11  
   396.1 --- a/src/HOL/UNITY/SubstAx.thy	Fri Jun 17 11:35:35 2005 +0200
   396.2 +++ b/src/HOL/UNITY/SubstAx.thy	Fri Jun 17 16:12:49 2005 +0200
   396.3 @@ -8,7 +8,7 @@
   396.4  
   396.5  header{*Weak Progress*}
   396.6  
   396.7 -theory SubstAx = WFair + Constrains:
   396.8 +theory SubstAx imports WFair Constrains begin
   396.9  
  396.10  constdefs
  396.11     Ensures :: "['a set, 'a set] => 'a program set"    (infixl "Ensures" 60)
   397.1 --- a/src/HOL/UNITY/Transformers.thy	Fri Jun 17 11:35:35 2005 +0200
   397.2 +++ b/src/HOL/UNITY/Transformers.thy	Fri Jun 17 16:12:49 2005 +0200
   397.3 @@ -16,7 +16,7 @@
   397.4  
   397.5  header{*Predicate Transformers*}
   397.6  
   397.7 -theory Transformers = Comp:
   397.8 +theory Transformers imports Comp begin
   397.9  
  397.10  subsection{*Defining the Predicate Transformers @{term wp},
  397.11     @{term awp} and  @{term wens}*}
   398.1 --- a/src/HOL/UNITY/UNITY.thy	Fri Jun 17 11:35:35 2005 +0200
   398.2 +++ b/src/HOL/UNITY/UNITY.thy	Fri Jun 17 16:12:49 2005 +0200
   398.3 @@ -10,7 +10,7 @@
   398.4  
   398.5  header {*The Basic UNITY Theory*}
   398.6  
   398.7 -theory UNITY = Main:
   398.8 +theory UNITY imports Main begin
   398.9  
  398.10  typedef (Program)
  398.11    'a program = "{(init:: 'a set, acts :: ('a * 'a)set set,
   399.1 --- a/src/HOL/UNITY/UNITY_Main.thy	Fri Jun 17 11:35:35 2005 +0200
   399.2 +++ b/src/HOL/UNITY/UNITY_Main.thy	Fri Jun 17 16:12:49 2005 +0200
   399.3 @@ -6,8 +6,8 @@
   399.4  
   399.5  header{*Comprehensive UNITY Theory*}
   399.6  
   399.7 -theory UNITY_Main = Detects + PPROD + Follows + ProgressSets
   399.8 -files "UNITY_tactics.ML":
   399.9 +theory UNITY_Main imports Detects PPROD Follows ProgressSets
  399.10 +uses "UNITY_tactics.ML" begin
  399.11  
  399.12  method_setup safety = {*
  399.13      Method.ctxt_args (fn ctxt =>
   400.1 --- a/src/HOL/UNITY/Union.thy	Fri Jun 17 11:35:35 2005 +0200
   400.2 +++ b/src/HOL/UNITY/Union.thy	Fri Jun 17 16:12:49 2005 +0200
   400.3 @@ -8,7 +8,7 @@
   400.4  
   400.5  header{*Unions of Programs*}
   400.6  
   400.7 -theory Union = SubstAx + FP:
   400.8 +theory Union imports SubstAx FP begin
   400.9  
  400.10  constdefs
  400.11  
   401.1 --- a/src/HOL/UNITY/WFair.thy	Fri Jun 17 11:35:35 2005 +0200
   401.2 +++ b/src/HOL/UNITY/WFair.thy	Fri Jun 17 16:12:49 2005 +0200
   401.3 @@ -10,7 +10,7 @@
   401.4  
   401.5  header{*Progress*}
   401.6  
   401.7 -theory WFair = UNITY:
   401.8 +theory WFair imports UNITY begin
   401.9  
  401.10  text{*The original version of this theory was based on weak fairness.  (Thus,
  401.11  the entire UNITY development embodied this assumption, until February 2003.)
   402.1 --- a/src/HOL/Unix/Unix.thy	Fri Jun 17 11:35:35 2005 +0200
   402.2 +++ b/src/HOL/Unix/Unix.thy	Fri Jun 17 16:12:49 2005 +0200
   402.3 @@ -5,7 +5,7 @@
   402.4  
   402.5  header {* Unix file-systems \label{sec:unix-file-system} *}
   402.6  
   402.7 -theory Unix = Nested_Environment + List_Prefix:
   402.8 +theory Unix imports Nested_Environment List_Prefix begin
   402.9  
  402.10  text {*
  402.11    We give a simple mathematical model of the basic structures
   403.1 --- a/src/HOL/ex/Adder.thy	Fri Jun 17 11:35:35 2005 +0200
   403.2 +++ b/src/HOL/ex/Adder.thy	Fri Jun 17 16:12:49 2005 +0200
   403.3 @@ -7,7 +7,7 @@
   403.4  
   403.5  header{* Adder *}
   403.6  
   403.7 -theory Adder = Main + Word:
   403.8 +theory Adder imports Main Word begin
   403.9  
  403.10  lemma [simp]: "bv_to_nat [b] = bitval b"
  403.11    by (simp add: bv_to_nat_helper)
   404.1 --- a/src/HOL/ex/Antiquote.thy	Fri Jun 17 11:35:35 2005 +0200
   404.2 +++ b/src/HOL/ex/Antiquote.thy	Fri Jun 17 16:12:49 2005 +0200
   404.3 @@ -5,7 +5,7 @@
   404.4  
   404.5  header {* Antiquotations *}
   404.6  
   404.7 -theory Antiquote = Main:
   404.8 +theory Antiquote imports Main begin
   404.9  
  404.10  text {*
  404.11    A simple example on quote / antiquote in higher-order abstract
   405.1 --- a/src/HOL/ex/BT.thy	Fri Jun 17 11:35:35 2005 +0200
   405.2 +++ b/src/HOL/ex/BT.thy	Fri Jun 17 16:12:49 2005 +0200
   405.3 @@ -8,7 +8,7 @@
   405.4  
   405.5  header {* Binary trees *}
   405.6  
   405.7 -theory BT = Main:
   405.8 +theory BT imports Main begin
   405.9  
  405.10  datatype 'a bt =
  405.11      Lf
   406.1 --- a/src/HOL/ex/BinEx.thy	Fri Jun 17 11:35:35 2005 +0200
   406.2 +++ b/src/HOL/ex/BinEx.thy	Fri Jun 17 16:12:49 2005 +0200
   406.3 @@ -6,7 +6,7 @@
   406.4  
   406.5  header {* Binary arithmetic examples *}
   406.6  
   406.7 -theory BinEx = Main:
   406.8 +theory BinEx imports Main begin
   406.9  
  406.10  subsection {* Regression Testing for Cancellation Simprocs *}
  406.11  
   407.1 --- a/src/HOL/ex/CTL.thy	Fri Jun 17 11:35:35 2005 +0200
   407.2 +++ b/src/HOL/ex/CTL.thy	Fri Jun 17 16:12:49 2005 +0200
   407.3 @@ -6,7 +6,7 @@
   407.4  
   407.5  header {* CTL formulae *}
   407.6  
   407.7 -theory CTL = Main:
   407.8 +theory CTL imports Main begin
   407.9  
  407.10  
  407.11  
   408.1 --- a/src/HOL/ex/Classical.thy	Fri Jun 17 11:35:35 2005 +0200
   408.2 +++ b/src/HOL/ex/Classical.thy	Fri Jun 17 16:12:49 2005 +0200
   408.3 @@ -6,7 +6,7 @@
   408.4  
   408.5  header{*Classical Predicate Calculus Problems*}
   408.6  
   408.7 -theory Classical = Main:
   408.8 +theory Classical imports Main begin
   408.9  
  408.10  subsection{*Traditional Classical Reasoner*}
  408.11  
   409.1 --- a/src/HOL/ex/Higher_Order_Logic.thy	Fri Jun 17 11:35:35 2005 +0200
   409.2 +++ b/src/HOL/ex/Higher_Order_Logic.thy	Fri Jun 17 16:12:49 2005 +0200
   409.3 @@ -5,7 +5,7 @@
   409.4  
   409.5  header {* Foundations of HOL *}
   409.6  
   409.7 -theory Higher_Order_Logic = CPure:
   409.8 +theory Higher_Order_Logic imports CPure begin
   409.9  
  409.10  text {*
  409.11    The following theory development demonstrates Higher-Order Logic
   410.1 --- a/src/HOL/ex/Hilbert_Classical.thy	Fri Jun 17 11:35:35 2005 +0200
   410.2 +++ b/src/HOL/ex/Hilbert_Classical.thy	Fri Jun 17 16:12:49 2005 +0200
   410.3 @@ -5,7 +5,7 @@
   410.4  
   410.5  header {* Hilbert's choice and classical logic *}
   410.6  
   410.7 -theory Hilbert_Classical = Main:
   410.8 +theory Hilbert_Classical imports Main begin
   410.9  
  410.10  text {*
  410.11    Derivation of the classical law of tertium-non-datur by means of
   411.1 --- a/src/HOL/ex/InductiveInvariant.thy	Fri Jun 17 11:35:35 2005 +0200
   411.2 +++ b/src/HOL/ex/InductiveInvariant.thy	Fri Jun 17 16:12:49 2005 +0200
   411.3 @@ -1,4 +1,4 @@
   411.4 -theory InductiveInvariant = Main:
   411.5 +theory InductiveInvariant imports Main begin
   411.6  
   411.7  (** Authors: Sava Krsti\'{c} and John Matthews **)
   411.8  (**    Date: Sep 12, 2003                      **)
   412.1 --- a/src/HOL/ex/InductiveInvariant_examples.thy	Fri Jun 17 11:35:35 2005 +0200
   412.2 +++ b/src/HOL/ex/InductiveInvariant_examples.thy	Fri Jun 17 16:12:49 2005 +0200
   412.3 @@ -1,4 +1,4 @@
   412.4 -theory InductiveInvariant_examples = InductiveInvariant :
   412.5 +theory InductiveInvariant_examples imports InductiveInvariant  begin
   412.6  
   412.7  (** Authors: Sava Krsti\'{c} and John Matthews **)
   412.8  (**    Date: Oct 17, 2003                      **)
   413.1 --- a/src/HOL/ex/Intuitionistic.thy	Fri Jun 17 11:35:35 2005 +0200
   413.2 +++ b/src/HOL/ex/Intuitionistic.thy	Fri Jun 17 16:12:49 2005 +0200
   413.3 @@ -8,7 +8,7 @@
   413.4  Taken from FOL/ex/int.ML
   413.5  *)
   413.6  
   413.7 -theory Intuitionistic = Main:
   413.8 +theory Intuitionistic imports Main begin
   413.9  
  413.10  
  413.11  (*Metatheorem (for PROPOSITIONAL formulae...):
   414.1 --- a/src/HOL/ex/Lagrange.thy	Fri Jun 17 11:35:35 2005 +0200
   414.2 +++ b/src/HOL/ex/Lagrange.thy	Fri Jun 17 16:12:49 2005 +0200
   414.3 @@ -11,7 +11,7 @@
   414.4  The enterprising reader might consider proving all of Lagrange's theorem.
   414.5  *)
   414.6  
   414.7 -theory Lagrange = Main:
   414.8 +theory Lagrange imports Main begin
   414.9  
  414.10  constdefs sq :: "'a::times => 'a"
  414.11           "sq x == x*x"
   415.1 --- a/src/HOL/ex/Locales.thy	Fri Jun 17 11:35:35 2005 +0200
   415.2 +++ b/src/HOL/ex/Locales.thy	Fri Jun 17 16:12:49 2005 +0200
   415.3 @@ -5,7 +5,7 @@
   415.4  
   415.5  header {* Using locales in Isabelle/Isar *}
   415.6  
   415.7 -theory Locales = Main:
   415.8 +theory Locales imports Main begin
   415.9  
  415.10  text_raw {*
  415.11    \newcommand{\isasyminv}{\isasyminverse}
   416.1 --- a/src/HOL/ex/MonoidGroup.thy	Fri Jun 17 11:35:35 2005 +0200
   416.2 +++ b/src/HOL/ex/MonoidGroup.thy	Fri Jun 17 16:12:49 2005 +0200
   416.3 @@ -7,7 +7,7 @@
   416.4  
   416.5  header {* Monoids and Groups *}
   416.6  
   416.7 -theory MonoidGroup = Main:
   416.8 +theory MonoidGroup imports Main begin
   416.9  
  416.10  record 'a monoid_sig =
  416.11    times :: "'a => 'a => 'a"
   417.1 --- a/src/HOL/ex/Multiquote.thy	Fri Jun 17 11:35:35 2005 +0200
   417.2 +++ b/src/HOL/ex/Multiquote.thy	Fri Jun 17 16:12:49 2005 +0200
   417.3 @@ -5,7 +5,7 @@
   417.4  
   417.5  header {* Multiple nested quotations and anti-quotations *}
   417.6  
   417.7 -theory Multiquote = Main:
   417.8 +theory Multiquote imports Main begin
   417.9  
  417.10  text {*
  417.11    Multiple nested quotations and anti-quotations -- basically a
   418.1 --- a/src/HOL/ex/NatSum.thy	Fri Jun 17 11:35:35 2005 +0200
   418.2 +++ b/src/HOL/ex/NatSum.thy	Fri Jun 17 16:12:49 2005 +0200
   418.3 @@ -5,7 +5,7 @@
   418.4  
   418.5  header {* Summing natural numbers *}
   418.6  
   418.7 -theory NatSum = Main:
   418.8 +theory NatSum imports Main begin
   418.9  
  418.10  text {*
  418.11    Summing natural numbers, squares, cubes, etc.
   419.1 --- a/src/HOL/ex/PER.thy	Fri Jun 17 11:35:35 2005 +0200
   419.2 +++ b/src/HOL/ex/PER.thy	Fri Jun 17 16:12:49 2005 +0200
   419.3 @@ -5,7 +5,7 @@
   419.4  
   419.5  header {* Partial equivalence relations *}
   419.6  
   419.7 -theory PER = Main:
   419.8 +theory PER imports Main begin
   419.9  
  419.10  text {*
  419.11    Higher-order quotients are defined over partial equivalence
   420.1 --- a/src/HOL/ex/PresburgerEx.thy	Fri Jun 17 11:35:35 2005 +0200
   420.2 +++ b/src/HOL/ex/PresburgerEx.thy	Fri Jun 17 16:12:49 2005 +0200
   420.3 @@ -5,7 +5,7 @@
   420.4  Some examples for Presburger Arithmetic
   420.5  *)
   420.6  
   420.7 -theory PresburgerEx = Main:
   420.8 +theory PresburgerEx imports Main begin
   420.9  
  420.10  theorem "(\<forall>(y::int). 3 dvd y) ==> \<forall>(x::int). b < x --> a \<le> x"
  420.11    by presburger
   421.1 --- a/src/HOL/ex/Primrec.thy	Fri Jun 17 11:35:35 2005 +0200
   421.2 +++ b/src/HOL/ex/Primrec.thy	Fri Jun 17 16:12:49 2005 +0200
   421.3 @@ -9,7 +9,7 @@
   421.4  
   421.5  header {* Primitive Recursive Functions *}
   421.6  
   421.7 -theory Primrec = Main:
   421.8 +theory Primrec imports Main begin
   421.9  
  421.10  text {*
  421.11    Proof adopted from
   422.1 --- a/src/HOL/ex/Puzzle.thy	Fri Jun 17 11:35:35 2005 +0200
   422.2 +++ b/src/HOL/ex/Puzzle.thy	Fri Jun 17 16:12:49 2005 +0200
   422.3 @@ -8,7 +8,7 @@
   422.4  Proof due to Herbert Ehler
   422.5  *)
   422.6  
   422.7 -theory Puzzle = Main:
   422.8 +theory Puzzle imports Main begin
   422.9  
  422.10  consts f :: "nat => nat"
  422.11  
   423.1 --- a/src/HOL/ex/Quickcheck_Examples.thy	Fri Jun 17 11:35:35 2005 +0200
   423.2 +++ b/src/HOL/ex/Quickcheck_Examples.thy	Fri Jun 17 16:12:49 2005 +0200
   423.3 @@ -6,7 +6,7 @@
   423.4  
   423.5  header {* Examples for the 'quickcheck' command *}
   423.6  
   423.7 -theory Quickcheck_Examples = Main:
   423.8 +theory Quickcheck_Examples imports Main begin
   423.9  
  423.10  text {*
  423.11  The 'quickcheck' command allows to find counterexamples by evaluating
   424.1 --- a/src/HOL/ex/Recdefs.thy	Fri Jun 17 11:35:35 2005 +0200
   424.2 +++ b/src/HOL/ex/Recdefs.thy	Fri Jun 17 16:12:49 2005 +0200
   424.3 @@ -8,7 +8,7 @@
   424.4  
   424.5  header {* Examples of recdef definitions *}
   424.6  
   424.7 -theory Recdefs = Main:
   424.8 +theory Recdefs imports Main begin
   424.9  
  424.10  consts fact :: "nat => nat"
  424.11  recdef fact  less_than
   425.1 --- a/src/HOL/ex/Records.thy	Fri Jun 17 11:35:35 2005 +0200
   425.2 +++ b/src/HOL/ex/Records.thy	Fri Jun 17 16:12:49 2005 +0200
   425.3 @@ -6,7 +6,7 @@
   425.4  
   425.5  header {* Using extensible records in HOL -- points and coloured points *}
   425.6  
   425.7 -theory Records = Main:
   425.8 +theory Records imports Main begin
   425.9  
  425.10  subsection {* Points *}
  425.11  
   426.1 --- a/src/HOL/ex/SVC_Oracle.thy	Fri Jun 17 11:35:35 2005 +0200
   426.2 +++ b/src/HOL/ex/SVC_Oracle.thy	Fri Jun 17 16:12:49 2005 +0200
   426.3 @@ -8,8 +8,8 @@
   426.4  Based upon the work of Søren T. Heilmann
   426.5  *)
   426.6  
   426.7 -theory SVC_Oracle = Main (** + Real??**)
   426.8 -files "svc_funcs.ML":
   426.9 +theory SVC_Oracle imports Main (** + Real??**)
  426.10 +uses "svc_funcs.ML" begin
  426.11  
  426.12  consts
  426.13    (*reserved for the oracle*)
   427.1 --- a/src/HOL/ex/StringEx.thy	Fri Jun 17 11:35:35 2005 +0200
   427.2 +++ b/src/HOL/ex/StringEx.thy	Fri Jun 17 16:12:49 2005 +0200
   427.3 @@ -1,7 +1,7 @@
   427.4  
   427.5  header {* String examples *}
   427.6  
   427.7 -theory StringEx = Main:
   427.8 +theory StringEx imports Main begin
   427.9  
  427.10  lemma "hd ''ABCD'' = CHR ''A''"
  427.11    by simp
   428.1 --- a/src/HOL/ex/Tarski.thy	Fri Jun 17 11:35:35 2005 +0200
   428.2 +++ b/src/HOL/ex/Tarski.thy	Fri Jun 17 16:12:49 2005 +0200
   428.3 @@ -5,7 +5,7 @@
   428.4  
   428.5  header {* The Full Theorem of Tarski *}
   428.6  
   428.7 -theory Tarski = Main + FuncSet:
   428.8 +theory Tarski imports Main FuncSet begin
   428.9  
  428.10  text {*
  428.11    Minimal version of lattice theory plus the full theorem of Tarski:
   429.1 --- a/src/HOL/ex/Tuple.thy	Fri Jun 17 11:35:35 2005 +0200
   429.2 +++ b/src/HOL/ex/Tuple.thy	Fri Jun 17 16:12:49 2005 +0200
   429.3 @@ -10,7 +10,7 @@
   429.4  
   429.5  header {* Properly nested products *}
   429.6  
   429.7 -theory Tuple = HOL:
   429.8 +theory Tuple imports HOL begin
   429.9  
  429.10  
  429.11  subsection {* Abstract syntax *}
   430.1 --- a/src/HOL/ex/mesontest2.thy	Fri Jun 17 11:35:35 2005 +0200
   430.2 +++ b/src/HOL/ex/mesontest2.thy	Fri Jun 17 16:12:49 2005 +0200
   430.3 @@ -1,6 +1,6 @@
   430.4  (*ID:         $Id$*)
   430.5  header {* Meson test cases *}
   430.6  
   430.7 -theory mesontest2 = Main:
   430.8 +theory mesontest2 imports Main begin
   430.9  
  430.10  end
   431.1 --- a/src/HOL/ex/set.thy	Fri Jun 17 11:35:35 2005 +0200
   431.2 +++ b/src/HOL/ex/set.thy	Fri Jun 17 16:12:49 2005 +0200
   431.3 @@ -6,7 +6,7 @@
   431.4  
   431.5  header {* Set Theory examples: Cantor's Theorem, Schröder-Berstein Theorem, etc. *}
   431.6  
   431.7 -theory set = Main:
   431.8 +theory set imports Main begin
   431.9  
  431.10  text{*
  431.11    These two are cited in Benzmueller and Kohlhase's system description
   432.1 --- a/src/HOLCF/Cfun.thy	Fri Jun 17 11:35:35 2005 +0200
   432.2 +++ b/src/HOLCF/Cfun.thy	Fri Jun 17 16:12:49 2005 +0200
   432.3 @@ -9,7 +9,7 @@
   432.4  
   432.5  theory Cfun
   432.6  imports TypedefPcpo
   432.7 -files ("cont_proc.ML")
   432.8 +uses ("cont_proc.ML")
   432.9  begin
  432.10  
  432.11  defaultsort cpo
   433.1 --- a/src/HOLCF/FOCUS/Fstreams.thy	Fri Jun 17 11:35:35 2005 +0200
   433.2 +++ b/src/HOLCF/FOCUS/Fstreams.thy	Fri Jun 17 16:12:49 2005 +0200
   433.3 @@ -6,7 +6,7 @@
   433.4  ###TODO: integrate this with Fstream.*
   433.5  *)
   433.6  
   433.7 -theory Fstreams = Stream:
   433.8 +theory Fstreams imports Stream begin
   433.9  
  433.10  defaultsort type
  433.11  
   434.1 --- a/src/HOLCF/Fixrec.thy	Fri Jun 17 11:35:35 2005 +0200
   434.2 +++ b/src/HOLCF/Fixrec.thy	Fri Jun 17 16:12:49 2005 +0200
   434.3 @@ -7,7 +7,7 @@
   434.4  
   434.5  theory Fixrec
   434.6  imports Ssum One Up Fix
   434.7 -files ("fixrec_package.ML")
   434.8 +uses ("fixrec_package.ML")
   434.9  begin
  434.10  
  434.11  subsection {* Maybe monad type *}
   435.1 --- a/src/HOLCF/IMP/Denotational.thy	Fri Jun 17 11:35:35 2005 +0200
   435.2 +++ b/src/HOLCF/IMP/Denotational.thy	Fri Jun 17 16:12:49 2005 +0200
   435.3 @@ -6,7 +6,7 @@
   435.4  
   435.5  header "Denotational Semantics of Commands in HOLCF"
   435.6  
   435.7 -theory Denotational = HOLCF + Natural:
   435.8 +theory Denotational imports HOLCF Natural begin
   435.9  
  435.10  subsection "Definition"
  435.11  
   436.1 --- a/src/HOLCF/IMP/HoareEx.thy	Fri Jun 17 11:35:35 2005 +0200
   436.2 +++ b/src/HOLCF/IMP/HoareEx.thy	Fri Jun 17 16:12:49 2005 +0200
   436.3 @@ -6,7 +6,7 @@
   436.4  
   436.5  header "Correctness of Hoare by Fixpoint Reasoning"
   436.6  
   436.7 -theory HoareEx = Denotational:
   436.8 +theory HoareEx imports Denotational begin
   436.9  
  436.10  text {*
  436.11    An example from the HOLCF paper by Müller, Nipkow, Oheimb, Slotosch
   437.1 --- a/src/HOLCF/ex/Dnat.thy	Fri Jun 17 11:35:35 2005 +0200
   437.2 +++ b/src/HOLCF/ex/Dnat.thy	Fri Jun 17 16:12:49 2005 +0200
   437.3 @@ -5,7 +5,7 @@
   437.4  Theory for the domain of natural numbers  dnat = one ++ dnat
   437.5  *)
   437.6  
   437.7 -theory Dnat = HOLCF:
   437.8 +theory Dnat imports HOLCF begin
   437.9  
  437.10  domain dnat = dzero | dsucc (dpred :: dnat)
  437.11  
   438.1 --- a/src/HOLCF/ex/Stream.thy	Fri Jun 17 11:35:35 2005 +0200
   438.2 +++ b/src/HOLCF/ex/Stream.thy	Fri Jun 17 16:12:49 2005 +0200
   438.3 @@ -5,7 +5,7 @@
   438.4  General Stream domain.
   438.5  *)
   438.6  
   438.7 -theory Stream = HOLCF + Nat_Infinity:
   438.8 +theory Stream imports HOLCF Nat_Infinity begin
   438.9  
  438.10  domain 'a stream = "&&" (ft::'a) (lazy rt::"'a stream") (infixr 65)
  438.11  
   439.1 --- a/src/ZF/AC.thy	Fri Jun 17 11:35:35 2005 +0200
   439.2 +++ b/src/ZF/AC.thy	Fri Jun 17 16:12:49 2005 +0200
   439.3 @@ -7,7 +7,7 @@
   439.4  
   439.5  header{*The Axiom of Choice*}
   439.6  
   439.7 -theory AC = Main:
   439.8 +theory AC imports Main begin
   439.9  
  439.10  text{*This definition comes from Halmos (1960), page 59.*}
  439.11  axioms AC: "[| a: A;  !!x. x:A ==> (EX y. y:B(x)) |] ==> EX z. z : Pi(A,B)"
   440.1 --- a/src/ZF/AC/AC15_WO6.thy	Fri Jun 17 11:35:35 2005 +0200
   440.2 +++ b/src/ZF/AC/AC15_WO6.thy	Fri Jun 17 16:12:49 2005 +0200
   440.3 @@ -20,7 +20,7 @@
   440.4  Rubin & Rubin do.
   440.5  *)
   440.6  
   440.7 -theory AC15_WO6 = HH + Cardinal_aux:
   440.8 +theory AC15_WO6 imports HH Cardinal_aux begin
   440.9  
  440.10  
  440.11  (* ********************************************************************** *)
   441.1 --- a/src/ZF/AC/AC16_WO4.thy	Fri Jun 17 11:35:35 2005 +0200
   441.2 +++ b/src/ZF/AC/AC16_WO4.thy	Fri Jun 17 16:12:49 2005 +0200
   441.3 @@ -7,7 +7,7 @@
   441.4  Tidied (using locales) by LCP
   441.5  *)
   441.6  
   441.7 -theory AC16_WO4 = AC16_lemmas:
   441.8 +theory AC16_WO4 imports AC16_lemmas begin
   441.9  
  441.10  (* ********************************************************************** *)
  441.11  (* The case of finite set                                                 *)
   442.1 --- a/src/ZF/AC/AC16_lemmas.thy	Fri Jun 17 11:35:35 2005 +0200
   442.2 +++ b/src/ZF/AC/AC16_lemmas.thy	Fri Jun 17 16:12:49 2005 +0200
   442.3 @@ -5,7 +5,7 @@
   442.4  Lemmas used in the proofs concerning AC16
   442.5  *)
   442.6  
   442.7 -theory AC16_lemmas = AC_Equiv + Hartog + Cardinal_aux:
   442.8 +theory AC16_lemmas imports AC_Equiv Hartog Cardinal_aux begin
   442.9  
  442.10  lemma cons_Diff_eq: "a\<notin>A ==> cons(a,A)-{a}=A"
  442.11  by fast
   443.1 --- a/src/ZF/AC/AC17_AC1.thy	Fri Jun 17 11:35:35 2005 +0200
   443.2 +++ b/src/ZF/AC/AC17_AC1.thy	Fri Jun 17 16:12:49 2005 +0200
   443.3 @@ -8,7 +8,7 @@
   443.4  to AC0 and AC1.
   443.5  *)
   443.6  
   443.7 -theory AC17_AC1 = HH:
   443.8 +theory AC17_AC1 imports HH begin
   443.9  
  443.10  
  443.11  (** AC0 is equivalent to AC1.  
   444.1 --- a/src/ZF/AC/AC18_AC19.thy	Fri Jun 17 11:35:35 2005 +0200
   444.2 +++ b/src/ZF/AC/AC18_AC19.thy	Fri Jun 17 16:12:49 2005 +0200
   444.3 @@ -5,7 +5,7 @@
   444.4  The proof of AC1 ==> AC18 ==> AC19 ==> AC1
   444.5  *)
   444.6  
   444.7 -theory AC18_AC19 = AC_Equiv:
   444.8 +theory AC18_AC19 imports AC_Equiv begin
   444.9  
  444.10  constdefs
  444.11    uu    :: "i => i"
   445.1 --- a/src/ZF/AC/AC7_AC9.thy	Fri Jun 17 11:35:35 2005 +0200
   445.2 +++ b/src/ZF/AC/AC7_AC9.thy	Fri Jun 17 16:12:49 2005 +0200
   445.3 @@ -6,7 +6,7 @@
   445.4  instances of AC.
   445.5  *)
   445.6  
   445.7 -theory AC7_AC9 = AC_Equiv:
   445.8 +theory AC7_AC9 imports AC_Equiv begin
   445.9  
  445.10  (* ********************************************************************** *)
  445.11  (* Lemmas used in the proofs AC7 ==> AC6 and AC9 ==> AC1                  *)
   446.1 --- a/src/ZF/AC/AC_Equiv.thy	Fri Jun 17 11:35:35 2005 +0200
   446.2 +++ b/src/ZF/AC/AC_Equiv.thy	Fri Jun 17 16:12:49 2005 +0200
   446.3 @@ -12,7 +12,7 @@
   446.4  but slightly changed.
   446.5  *)
   446.6  
   446.7 -theory AC_Equiv = Main: (*obviously not Main_ZFC*)
   446.8 +theory AC_Equiv imports Main begin (*obviously not Main_ZFC*)
   446.9  
  446.10  constdefs
  446.11    
   447.1 --- a/src/ZF/AC/Cardinal_aux.thy	Fri Jun 17 11:35:35 2005 +0200
   447.2 +++ b/src/ZF/AC/Cardinal_aux.thy	Fri Jun 17 16:12:49 2005 +0200
   447.3 @@ -5,7 +5,7 @@
   447.4  Auxiliary lemmas concerning cardinalities
   447.5  *)
   447.6  
   447.7 -theory Cardinal_aux = AC_Equiv:
   447.8 +theory Cardinal_aux imports AC_Equiv begin
   447.9  
  447.10  lemma Diff_lepoll: "[| A \<lesssim> succ(m); B \<subseteq> A; B\<noteq>0 |] ==> A-B \<lesssim> m"
  447.11  apply (rule not_emptyE, assumption)
   448.1 --- a/src/ZF/AC/DC.thy	Fri Jun 17 11:35:35 2005 +0200
   448.2 +++ b/src/ZF/AC/DC.thy	Fri Jun 17 16:12:49 2005 +0200
   448.3 @@ -5,7 +5,7 @@
   448.4  The proofs concerning the Axiom of Dependent Choice
   448.5  *)
   448.6  
   448.7 -theory DC = AC_Equiv + Hartog + Cardinal_aux:
   448.8 +theory DC imports AC_Equiv Hartog Cardinal_aux begin
   448.9  
  448.10  lemma RepFun_lepoll: "Ord(a) ==> {P(b). b \<in> a} \<lesssim> a"
  448.11  apply (unfold lepoll_def)
   449.1 --- a/src/ZF/AC/HH.thy	Fri Jun 17 11:35:35 2005 +0200
   449.2 +++ b/src/ZF/AC/HH.thy	Fri Jun 17 16:12:49 2005 +0200
   449.3 @@ -8,7 +8,7 @@
   449.4    AC15 ==> WO6
   449.5  *)
   449.6  
   449.7 -theory HH = AC_Equiv + Hartog:
   449.8 +theory HH imports AC_Equiv Hartog begin
   449.9  
  449.10  constdefs
  449.11   
   450.1 --- a/src/ZF/AC/Hartog.thy	Fri Jun 17 11:35:35 2005 +0200
   450.2 +++ b/src/ZF/AC/Hartog.thy	Fri Jun 17 16:12:49 2005 +0200
   450.3 @@ -5,7 +5,7 @@
   450.4  Hartog's function.
   450.5  *)
   450.6  
   450.7 -theory Hartog = AC_Equiv:
   450.8 +theory Hartog imports AC_Equiv begin
   450.9  
  450.10  constdefs
  450.11    Hartog :: "i => i"
   451.1 --- a/src/ZF/AC/WO1_AC.thy	Fri Jun 17 11:35:35 2005 +0200
   451.2 +++ b/src/ZF/AC/WO1_AC.thy	Fri Jun 17 16:12:49 2005 +0200
   451.3 @@ -25,7 +25,7 @@
   451.4  
   451.5  *)
   451.6  
   451.7 -theory WO1_AC = AC_Equiv:
   451.8 +theory WO1_AC imports AC_Equiv begin
   451.9  
  451.10  (* ********************************************************************** *)
  451.11  (* WO1 ==> AC1                                                            *)
   452.1 --- a/src/ZF/AC/WO1_WO7.thy	Fri Jun 17 11:35:35 2005 +0200
   452.2 +++ b/src/ZF/AC/WO1_WO7.thy	Fri Jun 17 16:12:49 2005 +0200
   452.3 @@ -9,7 +9,7 @@
   452.4  Also, WO1 <-> WO8
   452.5  *)
   452.6  
   452.7 -theory WO1_WO7 = AC_Equiv:
   452.8 +theory WO1_WO7 imports AC_Equiv begin
   452.9  
  452.10  constdefs
  452.11    LEMMA :: o
   453.1 --- a/src/ZF/AC/WO2_AC16.thy	Fri Jun 17 11:35:35 2005 +0200
   453.2 +++ b/src/ZF/AC/WO2_AC16.thy	Fri Jun 17 16:12:49 2005 +0200
   453.3 @@ -14,7 +14,7 @@
   453.4    contains m distinct elements (in fact is equipollent to s)
   453.5  *)
   453.6  
   453.7 -theory WO2_AC16 = AC_Equiv + AC16_lemmas + Cardinal_aux:
   453.8 +theory WO2_AC16 imports AC_Equiv AC16_lemmas Cardinal_aux begin
   453.9  
  453.10  (**** A recursive definition used in the proof of WO2 ==> AC16 ****)
  453.11  
   454.1 --- a/src/ZF/AC/WO6_WO1.thy	Fri Jun 17 11:35:35 2005 +0200
   454.2 +++ b/src/ZF/AC/WO6_WO1.thy	Fri Jun 17 16:12:49 2005 +0200
   454.3 @@ -11,7 +11,7 @@
   454.4  Fortunately order types made this proof also very easy.
   454.5  *)
   454.6  
   454.7 -theory WO6_WO1 = Cardinal_aux:
   454.8 +theory WO6_WO1 imports Cardinal_aux begin
   454.9  
  454.10  constdefs
  454.11  (* Auxiliary definitions used in proof *)
   455.1 --- a/src/ZF/Arith.thy	Fri Jun 17 11:35:35 2005 +0200
   455.2 +++ b/src/ZF/Arith.thy	Fri Jun 17 16:12:49 2005 +0200
   455.3 @@ -13,7 +13,7 @@
   455.4  
   455.5  header{*Arithmetic Operators and Their Definitions*} 
   455.6  
   455.7 -theory Arith = Univ:
   455.8 +theory Arith imports Univ begin
   455.9  
  455.10  text{*Proofs about elementary arithmetic: addition, multiplication, etc.*}
  455.11  
   456.1 --- a/src/ZF/ArithSimp.thy	Fri Jun 17 11:35:35 2005 +0200
   456.2 +++ b/src/ZF/ArithSimp.thy	Fri Jun 17 16:12:49 2005 +0200
   456.3 @@ -9,7 +9,7 @@
   456.4  
   456.5  theory ArithSimp 
   456.6  imports Arith
   456.7 -files "~~/src/Provers/Arith/cancel_numerals.ML"
   456.8 +uses "~~/src/Provers/Arith/cancel_numerals.ML"
   456.9        "~~/src/Provers/Arith/combine_numerals.ML"
  456.10        "arith_data.ML"
  456.11  
   457.1 --- a/src/ZF/Bool.thy	Fri Jun 17 11:35:35 2005 +0200
   457.2 +++ b/src/ZF/Bool.thy	Fri Jun 17 16:12:49 2005 +0200
   457.3 @@ -7,7 +7,7 @@
   457.4  
   457.5  header{*Booleans in Zermelo-Fraenkel Set Theory*}
   457.6  
   457.7 -theory Bool = pair:
   457.8 +theory Bool imports pair begin
   457.9  
  457.10  syntax
  457.11      "1"         :: i             ("1")
   458.1 --- a/src/ZF/Cardinal.thy	Fri Jun 17 11:35:35 2005 +0200
   458.2 +++ b/src/ZF/Cardinal.thy	Fri Jun 17 16:12:49 2005 +0200
   458.3 @@ -7,7 +7,7 @@
   458.4  
   458.5  header{*Cardinal Numbers Without the Axiom of Choice*}
   458.6  
   458.7 -theory Cardinal = OrderType + Finite + Nat + Sum:
   458.8 +theory Cardinal imports OrderType Finite Nat Sum begin
   458.9  
  458.10  constdefs
  458.11  
   459.1 --- a/src/ZF/CardinalArith.thy	Fri Jun 17 11:35:35 2005 +0200
   459.2 +++ b/src/ZF/CardinalArith.thy	Fri Jun 17 16:12:49 2005 +0200
   459.3 @@ -7,7 +7,7 @@
   459.4  
   459.5  header{*Cardinal Arithmetic Without the Axiom of Choice*}
   459.6  
   459.7 -theory CardinalArith = Cardinal + OrderArith + ArithSimp + Finite:
   459.8 +theory CardinalArith imports Cardinal OrderArith ArithSimp Finite begin
   459.9  
  459.10  constdefs
  459.11  
   460.1 --- a/src/ZF/Cardinal_AC.thy	Fri Jun 17 11:35:35 2005 +0200
   460.2 +++ b/src/ZF/Cardinal_AC.thy	Fri Jun 17 16:12:49 2005 +0200
   460.3 @@ -8,7 +8,7 @@
   460.4  
   460.5  header{*Cardinal Arithmetic Using AC*}
   460.6  
   460.7 -theory Cardinal_AC = CardinalArith + Zorn:
   460.8 +theory Cardinal_AC imports CardinalArith Zorn begin
   460.9  
  460.10  subsection{*Strengthened Forms of Existing Theorems on Cardinals*}
  460.11  
   461.1 --- a/src/ZF/Coind/Dynamic.thy	Fri Jun 17 11:35:35 2005 +0200
   461.2 +++ b/src/ZF/Coind/Dynamic.thy	Fri Jun 17 16:12:49 2005 +0200
   461.3 @@ -4,7 +4,7 @@
   461.4      Copyright   1995  University of Cambridge
   461.5  *)
   461.6  
   461.7 -theory Dynamic = Values:
   461.8 +theory Dynamic imports Values begin
   461.9  
  461.10  consts
  461.11    EvalRel :: i
   462.1 --- a/src/ZF/Coind/ECR.thy	Fri Jun 17 11:35:35 2005 +0200
   462.2 +++ b/src/ZF/Coind/ECR.thy	Fri Jun 17 16:12:49 2005 +0200
   462.3 @@ -4,7 +4,7 @@
   462.4      Copyright   1995  University of Cambridge
   462.5  *)
   462.6  
   462.7 -theory ECR = Static + Dynamic:
   462.8 +theory ECR imports Static Dynamic begin
   462.9  
  462.10  (* The extended correspondence relation *)
  462.11  
   463.1 --- a/src/ZF/Coind/Language.thy	Fri Jun 17 11:35:35 2005 +0200
   463.2 +++ b/src/ZF/Coind/Language.thy	Fri Jun 17 16:12:49 2005 +0200
   463.3 @@ -4,7 +4,7 @@
   463.4      Copyright   1995  University of Cambridge
   463.5  *)
   463.6  
   463.7 -theory Language = Main:
   463.8 +theory Language imports Main begin
   463.9  
  463.10  consts
  463.11    Const :: i                    (* Abstract type of constants *)
   464.1 --- a/src/ZF/Coind/Map.thy	Fri Jun 17 11:35:35 2005 +0200
   464.2 +++ b/src/ZF/Coind/Map.thy	Fri Jun 17 16:12:49 2005 +0200
   464.3 @@ -8,7 +8,7 @@
   464.4  
   464.5  *)
   464.6  
   464.7 -theory Map = Main:
   464.8 +theory Map imports Main begin
   464.9  
  464.10  constdefs
  464.11    TMap :: "[i,i] => i"
   465.1 --- a/src/ZF/Coind/Static.thy	Fri Jun 17 11:35:35 2005 +0200
   465.2 +++ b/src/ZF/Coind/Static.thy	Fri Jun 17 16:12:49 2005 +0200
   465.3 @@ -4,7 +4,7 @@
   465.4      Copyright   1995  University of Cambridge
   465.5  *)
   465.6  
   465.7 -theory Static = Values + Types:
   465.8 +theory Static imports Values Types begin
   465.9  
  465.10  (*** Basic correspondence relation -- not completely specified, as it is a
  465.11       parameter of the proof.  A concrete version could be defined inductively.
   466.1 --- a/src/ZF/Coind/Types.thy	Fri Jun 17 11:35:35 2005 +0200
   466.2 +++ b/src/ZF/Coind/Types.thy	Fri Jun 17 16:12:49 2005 +0200
   466.3 @@ -4,7 +4,7 @@
   466.4      Copyright   1995  University of Cambridge
   466.5  *)
   466.6  
   466.7 -theory Types = Language:
   466.8 +theory Types imports Language begin
   466.9  
  466.10  consts
  466.11    Ty :: i               (* Datatype of types *)
   467.1 --- a/src/ZF/Coind/Values.thy	Fri Jun 17 11:35:35 2005 +0200
   467.2 +++ b/src/ZF/Coind/Values.thy	Fri Jun 17 16:12:49 2005 +0200
   467.3 @@ -4,7 +4,7 @@
   467.4      Copyright   1995  University of Cambridge
   467.5  *)
   467.6  
   467.7 -theory Values = Language + Map:
   467.8 +theory Values imports Language Map begin
   467.9  
  467.10  (* Values, values environments and associated operators *)
  467.11  
   468.1 --- a/src/ZF/Constructible/AC_in_L.thy	Fri Jun 17 11:35:35 2005 +0200
   468.2 +++ b/src/ZF/Constructible/AC_in_L.thy	Fri Jun 17 16:12:49 2005 +0200
   468.3 @@ -5,7 +5,7 @@
   468.4  
   468.5  header {* The Axiom of Choice Holds in L! *}
   468.6  
   468.7 -theory AC_in_L = Formula:
   468.8 +theory AC_in_L imports Formula begin
   468.9  
  468.10  subsection{*Extending a Wellordering over a List -- Lexicographic Power*}
  468.11  
   469.1 --- a/src/ZF/Constructible/DPow_absolute.thy	Fri Jun 17 11:35:35 2005 +0200
   469.2 +++ b/src/ZF/Constructible/DPow_absolute.thy	Fri Jun 17 16:12:49 2005 +0200
   469.3 @@ -6,7 +6,7 @@
   469.4  header {*Absoluteness for the Definable Powerset Function*}
   469.5  
   469.6  
   469.7 -theory DPow_absolute = Satisfies_absolute:
   469.8 +theory DPow_absolute imports Satisfies_absolute begin
   469.9  
  469.10  
  469.11  subsection{*Preliminary Internalizations*}
   470.1 --- a/src/ZF/Constructible/Datatype_absolute.thy	Fri Jun 17 11:35:35 2005 +0200
   470.2 +++ b/src/ZF/Constructible/Datatype_absolute.thy	Fri Jun 17 16:12:49 2005 +0200
   470.3 @@ -5,7 +5,7 @@
   470.4  
   470.5  header {*Absoluteness Properties for Recursive Datatypes*}
   470.6  
   470.7 -theory Datatype_absolute = Formula + WF_absolute:
   470.8 +theory Datatype_absolute imports Formula WF_absolute begin
   470.9  
  470.10  
  470.11  subsection{*The lfp of a continuous function can be expressed as a union*}
   471.1 --- a/src/ZF/Constructible/Formula.thy	Fri Jun 17 11:35:35 2005 +0200
   471.2 +++ b/src/ZF/Constructible/Formula.thy	Fri Jun 17 16:12:49 2005 +0200
   471.3 @@ -5,7 +5,7 @@
   471.4  
   471.5  header {* First-Order Formulas and the Definition of the Class L *}
   471.6  
   471.7 -theory Formula = Main:
   471.8 +theory Formula imports Main begin
   471.9  
  471.10  subsection{*Internalized formulas of FOL*}
  471.11  
   472.1 --- a/src/ZF/Constructible/Internalize.thy	Fri Jun 17 11:35:35 2005 +0200
   472.2 +++ b/src/ZF/Constructible/Internalize.thy	Fri Jun 17 16:12:49 2005 +0200
   472.3 @@ -3,7 +3,7 @@
   472.4      Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
   472.5  *)
   472.6  
   472.7 -theory Internalize = L_axioms + Datatype_absolute:
   472.8 +theory Internalize imports L_axioms Datatype_absolute begin
   472.9  
  472.10  subsection{*Internalized Forms of Data Structuring Operators*}
  472.11  
   473.1 --- a/src/ZF/Constructible/L_axioms.thy	Fri Jun 17 11:35:35 2005 +0200
   473.2 +++ b/src/ZF/Constructible/L_axioms.thy	Fri Jun 17 16:12:49 2005 +0200
   473.3 @@ -5,7 +5,7 @@
   473.4  
   473.5  header {* The ZF Axioms (Except Separation) in L *}
   473.6  
   473.7 -theory L_axioms = Formula + Relative + Reflection + MetaExists:
   473.8 +theory L_axioms imports Formula Relative Reflection MetaExists begin
   473.9  
  473.10  text {* The class L satisfies the premises of locale @{text M_trivial} *}
  473.11  
   474.1 --- a/src/ZF/Constructible/MetaExists.thy	Fri Jun 17 11:35:35 2005 +0200
   474.2 +++ b/src/ZF/Constructible/MetaExists.thy	Fri Jun 17 16:12:49 2005 +0200
   474.3 @@ -5,7 +5,7 @@
   474.4  
   474.5  header{*The meta-existential quantifier*}
   474.6  
   474.7 -theory MetaExists = Main:
   474.8 +theory MetaExists imports Main begin
   474.9  
  474.10  text{*Allows quantification over any term having sort @{text logic}.  Used to
  474.11  quantify over classes.  Yields a proposition rather than a FOL formula.*}
   475.1 --- a/src/ZF/Constructible/Normal.thy	Fri Jun 17 11:35:35 2005 +0200
   475.2 +++ b/src/ZF/Constructible/Normal.thy	Fri Jun 17 16:12:49 2005 +0200
   475.3 @@ -5,7 +5,7 @@
   475.4  
   475.5  header {*Closed Unbounded Classes and Normal Functions*}
   475.6  
   475.7 -theory Normal = Main:
   475.8 +theory Normal imports Main begin
   475.9  
  475.10  text{*
  475.11  One source is the book
   476.1 --- a/src/ZF/Constructible/Rank.thy	Fri Jun 17 11:35:35 2005 +0200
   476.2 +++ b/src/ZF/Constructible/Rank.thy	Fri Jun 17 16:12:49 2005 +0200
   476.3 @@ -6,7 +6,7 @@
   476.4  header {*Absoluteness for Order Types, Rank Functions and Well-Founded 
   476.5           Relations*}
   476.6  
   476.7 -theory Rank = WF_absolute:
   476.8 +theory Rank imports WF_absolute begin
   476.9  
  476.10  subsection {*Order Types: A Direct Construction by Replacement*}
  476.11  
   477.1 --- a/src/ZF/Constructible/Rank_Separation.thy	Fri Jun 17 11:35:35 2005 +0200
   477.2 +++ b/src/ZF/Constructible/Rank_Separation.thy	Fri Jun 17 16:12:49 2005 +0200
   477.3 @@ -6,7 +6,7 @@
   477.4  header {*Separation for Facts About Order Types, Rank Functions and 
   477.5        Well-Founded Relations*}
   477.6  
   477.7 -theory Rank_Separation = Rank + Rec_Separation:
   477.8 +theory Rank_Separation imports Rank Rec_Separation begin
   477.9  
  477.10  
  477.11  text{*This theory proves all instances needed for locales
   478.1 --- a/src/ZF/Constructible/Rec_Separation.thy	Fri Jun 17 11:35:35 2005 +0200
   478.2 +++ b/src/ZF/Constructible/Rec_Separation.thy	Fri Jun 17 16:12:49 2005 +0200
   478.3 @@ -5,7 +5,7 @@
   478.4  
   478.5  header {*Separation for Facts About Recursion*}
   478.6  
   478.7 -theory Rec_Separation = Separation + Internalize:
   478.8 +theory Rec_Separation imports Separation Internalize begin
   478.9  
  478.10  text{*This theory proves all instances needed for locales @{text
  478.11  "M_trancl"} and @{text "M_datatypes"}*}
   479.1 --- a/src/ZF/Constructible/Reflection.thy	Fri Jun 17 11:35:35 2005 +0200
   479.2 +++ b/src/ZF/Constructible/Reflection.thy	Fri Jun 17 16:12:49 2005 +0200
   479.3 @@ -5,7 +5,7 @@
   479.4  
   479.5  header {* The Reflection Theorem*}
   479.6  
   479.7 -theory Reflection = Normal:
   479.8 +theory Reflection imports Normal begin
   479.9  
  479.10  lemma all_iff_not_ex_not: "(\<forall>x. P(x)) <-> (~ (\<exists>x. ~ P(x)))";
  479.11  by blast
   480.1 --- a/src/ZF/Constructible/Relative.thy	Fri Jun 17 11:35:35 2005 +0200
   480.2 +++ b/src/ZF/Constructible/Relative.thy	Fri Jun 17 16:12:49 2005 +0200
   480.3 @@ -5,7 +5,7 @@
   480.4  
   480.5  header {*Relativization and Absoluteness*}
   480.6  
   480.7 -theory Relative = Main:
   480.8 +theory Relative imports Main begin
   480.9  
  480.10  subsection{* Relativized versions of standard set-theoretic concepts *}
  480.11  
   481.1 --- a/src/ZF/Constructible/Satisfies_absolute.thy	Fri Jun 17 11:35:35 2005 +0200
   481.2 +++ b/src/ZF/Constructible/Satisfies_absolute.thy	Fri Jun 17 16:12:49 2005 +0200
   481.3 @@ -5,7 +5,7 @@
   481.4  
   481.5  header {*Absoluteness for the Satisfies Relation on Formulas*}
   481.6  
   481.7 -theory Satisfies_absolute = Datatype_absolute + Rec_Separation: 
   481.8 +theory Satisfies_absolute imports Datatype_absolute Rec_Separation begin 
   481.9  
  481.10  
  481.11  subsection {*More Internalization*}
   482.1 --- a/src/ZF/Constructible/Separation.thy	Fri Jun 17 11:35:35 2005 +0200
   482.2 +++ b/src/ZF/Constructible/Separation.thy	Fri Jun 17 16:12:49 2005 +0200
   482.3 @@ -5,7 +5,7 @@
   482.4  
   482.5  header{*Early Instances of Separation and Strong Replacement*}
   482.6  
   482.7 -theory Separation = L_axioms + WF_absolute:
   482.8 +theory Separation imports L_axioms WF_absolute begin
   482.9  
  482.10  text{*This theory proves all instances needed for locale @{text "M_basic"}*}
  482.11  
   483.1 --- a/src/ZF/Constructible/WF_absolute.thy	Fri Jun 17 11:35:35 2005 +0200
   483.2 +++ b/src/ZF/Constructible/WF_absolute.thy	Fri Jun 17 16:12:49 2005 +0200
   483.3 @@ -5,7 +5,7 @@
   483.4  
   483.5  header {*Absoluteness of Well-Founded Recursion*}
   483.6  
   483.7 -theory WF_absolute = WFrec:
   483.8 +theory WF_absolute imports WFrec begin
   483.9  
  483.10  subsection{*Transitive closure without fixedpoints*}
  483.11  
   484.1 --- a/src/ZF/Constructible/WFrec.thy	Fri Jun 17 11:35:35 2005 +0200
   484.2 +++ b/src/ZF/Constructible/WFrec.thy	Fri Jun 17 16:12:49 2005 +0200
   484.3 @@ -5,7 +5,7 @@
   484.4  
   484.5  header{*Relativized Well-Founded Recursion*}
   484.6  
   484.7 -theory WFrec = Wellorderings:
   484.8 +theory WFrec imports Wellorderings begin
   484.9  
  484.10  
  484.11  subsection{*General Lemmas*}
   485.1 --- a/src/ZF/Constructible/Wellorderings.thy	Fri Jun 17 11:35:35 2005 +0200
   485.2 +++ b/src/ZF/Constructible/Wellorderings.thy	Fri Jun 17 16:12:49 2005 +0200
   485.3 @@ -5,7 +5,7 @@
   485.4  
   485.5  header {*Relativized Wellorderings*}
   485.6  
   485.7 -theory Wellorderings = Relative:
   485.8 +theory Wellorderings imports Relative begin
   485.9  
  485.10  text{*We define functions analogous to @{term ordermap} @{term ordertype} 
  485.11        but without using recursion.  Instead, there is a direct appeal
   486.1 --- a/src/ZF/Datatype.thy	Fri Jun 17 11:35:35 2005 +0200
   486.2 +++ b/src/ZF/Datatype.thy	Fri Jun 17 16:12:49 2005 +0200
   486.3 @@ -7,9 +7,9 @@
   486.4  
   486.5  header{*Datatype and CoDatatype Definitions*}
   486.6  
   486.7 -theory Datatype = Inductive + Univ + QUniv
   486.8 -  files
   486.9 +theory Datatype imports Inductive Univ QUniv
  486.10 +  uses
  486.11      "Tools/datatype_package.ML"
  486.12 -    "Tools/numeral_syntax.ML":  (*belongs to theory Bin*)
  486.13 +    "Tools/numeral_syntax.ML" begin  (*belongs to theory Bin*)
  486.14  
  486.15  end
   487.1 --- a/src/ZF/Epsilon.thy	Fri Jun 17 11:35:35 2005 +0200
   487.2 +++ b/src/ZF/Epsilon.thy	Fri Jun 17 16:12:49 2005 +0200
   487.3 @@ -7,7 +7,7 @@
   487.4  
   487.5  header{*Epsilon Induction and Recursion*}
   487.6  
   487.7 -theory Epsilon = Nat:
   487.8 +theory Epsilon imports Nat begin
   487.9  
  487.10  constdefs
  487.11    eclose    :: "i=>i"
   488.1 --- a/src/ZF/Finite.thy	Fri Jun 17 11:35:35 2005 +0200
   488.2 +++ b/src/ZF/Finite.thy	Fri Jun 17 16:12:49 2005 +0200
   488.3 @@ -8,7 +8,7 @@
   488.4  
   488.5  header{*Finite Powerset Operator and Finite Function Space*}
   488.6  
   488.7 -theory Finite = Inductive + Epsilon + Nat:
   488.8 +theory Finite imports Inductive Epsilon Nat begin
   488.9  
  488.10  (*The natural numbers as a datatype*)
  488.11  rep_datatype
   489.1 --- a/src/ZF/Fixedpt.thy	Fri Jun 17 11:35:35 2005 +0200
   489.2 +++ b/src/ZF/Fixedpt.thy	Fri Jun 17 16:12:49 2005 +0200
   489.3 @@ -6,7 +6,7 @@
   489.4  
   489.5  header{*Least and Greatest Fixed Points; the Knaster-Tarski Theorem*}
   489.6  
   489.7 -theory Fixedpt = equalities:
   489.8 +theory Fixedpt imports equalities begin
   489.9  
  489.10  constdefs
  489.11    
   490.1 --- a/src/ZF/IMP/Com.thy	Fri Jun 17 11:35:35 2005 +0200
   490.2 +++ b/src/ZF/IMP/Com.thy	Fri Jun 17 16:12:49 2005 +0200
   490.3 @@ -5,7 +5,7 @@
   490.4  
   490.5  header {* Arithmetic expressions, boolean expressions, commands *}
   490.6  
   490.7 -theory Com = Main:
   490.8 +theory Com imports Main begin
   490.9  
  490.10  
  490.11  subsection {* Arithmetic expressions *}
   491.1 --- a/src/ZF/IMP/Denotation.thy	Fri Jun 17 11:35:35 2005 +0200
   491.2 +++ b/src/ZF/IMP/Denotation.thy	Fri Jun 17 16:12:49 2005 +0200
   491.3 @@ -5,7 +5,7 @@
   491.4  
   491.5  header {* Denotational semantics of expressions and commands *}
   491.6  
   491.7 -theory Denotation = Com:
   491.8 +theory Denotation imports Com begin
   491.9  
  491.10  subsection {* Definitions *}
  491.11  
   492.1 --- a/src/ZF/IMP/Equiv.thy	Fri Jun 17 11:35:35 2005 +0200
   492.2 +++ b/src/ZF/IMP/Equiv.thy	Fri Jun 17 16:12:49 2005 +0200
   492.3 @@ -5,7 +5,7 @@
   492.4  
   492.5  header {* Equivalence *}
   492.6  
   492.7 -theory Equiv = Denotation + Com:
   492.8 +theory Equiv imports Denotation Com begin
   492.9  
  492.10  lemma aexp_iff [rule_format]:
  492.11    "[| a \<in> aexp; sigma: loc -> nat |] 
   493.1 --- a/src/ZF/Induct/Acc.thy	Fri Jun 17 11:35:35 2005 +0200
   493.2 +++ b/src/ZF/Induct/Acc.thy	Fri Jun 17 16:12:49 2005 +0200
   493.3 @@ -6,7 +6,7 @@
   493.4  
   493.5  header {* The accessible part of a relation *}
   493.6  
   493.7 -theory Acc = Main:
   493.8 +theory Acc imports Main begin
   493.9  
  493.10  text {*
  493.11    Inductive definition of @{text "acc(r)"}; see \cite{paulin-tlca}.
   494.1 --- a/src/ZF/Induct/Binary_Trees.thy	Fri Jun 17 11:35:35 2005 +0200
   494.2 +++ b/src/ZF/Induct/Binary_Trees.thy	Fri Jun 17 16:12:49 2005 +0200
   494.3 @@ -6,7 +6,7 @@
   494.4  
   494.5  header {* Binary trees *}
   494.6  
   494.7 -theory Binary_Trees = Main:
   494.8 +theory Binary_Trees imports Main begin
   494.9  
  494.10  subsection {* Datatype definition *}
  494.11  
   495.1 --- a/src/ZF/Induct/Brouwer.thy	Fri Jun 17 11:35:35 2005 +0200
   495.2 +++ b/src/ZF/Induct/Brouwer.thy	Fri Jun 17 16:12:49 2005 +0200
   495.3 @@ -6,7 +6,7 @@
   495.4  
   495.5  header {* Infinite branching datatype definitions *}
   495.6  
   495.7 -theory Brouwer = Main_ZFC:
   495.8 +theory Brouwer imports Main_ZFC begin
   495.9  
  495.10  subsection {* The Brouwer ordinals *}
  495.11  
   496.1 --- a/src/ZF/Induct/Comb.thy	Fri Jun 17 11:35:35 2005 +0200
   496.2 +++ b/src/ZF/Induct/Comb.thy	Fri Jun 17 16:12:49 2005 +0200
   496.3 @@ -6,7 +6,7 @@
   496.4  
   496.5  header {* Combinatory Logic example: the Church-Rosser Theorem *}
   496.6  
   496.7 -theory Comb = Main:
   496.8 +theory Comb imports Main begin
   496.9  
  496.10  text {*
  496.11    Curiously, combinators do not include free variables.
   497.1 --- a/src/ZF/Induct/Datatypes.thy	Fri Jun 17 11:35:35 2005 +0200
   497.2 +++ b/src/ZF/Induct/Datatypes.thy	Fri Jun 17 16:12:49 2005 +0200
   497.3 @@ -6,7 +6,7 @@
   497.4  
   497.5  header {* Sample datatype definitions *}
   497.6  
   497.7 -theory Datatypes = Main:
   497.8 +theory Datatypes imports Main begin
   497.9  
  497.10  subsection {* A type with four constructors *}
  497.11  
   498.1 --- a/src/ZF/Induct/FoldSet.thy	Fri Jun 17 11:35:35 2005 +0200
   498.2 +++ b/src/ZF/Induct/FoldSet.thy	Fri Jun 17 16:12:49 2005 +0200
   498.3 @@ -8,7 +8,7 @@
   498.4  least left-commutative.  
   498.5  *)
   498.6  
   498.7 -theory FoldSet = Main:
   498.8 +theory FoldSet imports Main begin
   498.9  
  498.10  consts fold_set :: "[i, i, [i,i]=>i, i] => i"
  498.11  
   499.1 --- a/src/ZF/Induct/ListN.thy	Fri Jun 17 11:35:35 2005 +0200
   499.2 +++ b/src/ZF/Induct/ListN.thy	Fri Jun 17 16:12:49 2005 +0200
   499.3 @@ -6,7 +6,7 @@
   499.4  
   499.5  header {* Lists of n elements *}
   499.6  
   499.7 -theory ListN = Main:
   499.8 +theory ListN imports Main begin
   499.9  
  499.10  text {*
  499.11    Inductive definition of lists of @{text n} elements; see
   500.1 --- a/src/ZF/Induct/Mutil.thy	Fri Jun 17 11:35:35 2005 +0200
   500.2 +++ b/src/ZF/Induct/Mutil.thy	Fri Jun 17 16:12:49 2005 +0200
   500.3 @@ -6,7 +6,7 @@
   500.4  
   500.5  header {* The Mutilated Chess Board Problem, formalized inductively *}
   500.6  
   500.7 -theory Mutil = Main:
   500.8 +theory Mutil imports Main begin
   500.9  
  500.10  text {*
  500.11    Originator is Max Black, according to J A Robinson.  Popularized as
   501.1 --- a/src/ZF/Induct/Ntree.thy	Fri Jun 17 11:35:35 2005 +0200
   501.2 +++ b/src/ZF/Induct/Ntree.thy	Fri Jun 17 16:12:49 2005 +0200
   501.3 @@ -6,7 +6,7 @@
   501.4  
   501.5  header {* Datatype definition n-ary branching trees *}
   501.6  
   501.7 -theory Ntree = Main:
   501.8 +theory Ntree imports Main begin
   501.9  
  501.10  text {*
  501.11    Demonstrates a simple use of function space in a datatype
   502.1 --- a/src/ZF/Induct/Primrec.thy	Fri Jun 17 11:35:35 2005 +0200
   502.2 +++ b/src/ZF/Induct/Primrec.thy	Fri Jun 17 16:12:49 2005 +0200
   502.3 @@ -6,7 +6,7 @@
   502.4  
   502.5  header {* Primitive Recursive Functions: the inductive definition *}
   502.6  
   502.7 -theory Primrec = Main:
   502.8 +theory Primrec imports Main begin
   502.9  
  502.10  text {*
  502.11    Proof adopted from \cite{szasz}.
   503.1 --- a/src/ZF/Induct/PropLog.thy	Fri Jun 17 11:35:35 2005 +0200
   503.2 +++ b/src/ZF/Induct/PropLog.thy	Fri Jun 17 16:12:49 2005 +0200
   503.3 @@ -6,7 +6,7 @@
   503.4  
   503.5  header {* Meta-theory of propositional logic *}
   503.6  
   503.7 -theory PropLog = Main:
   503.8 +theory PropLog imports Main begin
   503.9  
  503.10  text {*
  503.11    Datatype definition of propositional logic formulae and inductive
   504.1 --- a/src/ZF/Induct/Rmap.thy	Fri Jun 17 11:35:35 2005 +0200
   504.2 +++ b/src/ZF/Induct/Rmap.thy	Fri Jun 17 16:12:49 2005 +0200
   504.3 @@ -6,7 +6,7 @@
   504.4  
   504.5  header {* An operator to ``map'' a relation over a list *}
   504.6  
   504.7 -theory Rmap = Main:
   504.8 +theory Rmap imports Main begin
   504.9  
  504.10  consts
  504.11    rmap :: "i=>i"
   505.1 --- a/src/ZF/Induct/Term.thy	Fri Jun 17 11:35:35 2005 +0200
   505.2 +++ b/src/ZF/Induct/Term.thy	Fri Jun 17 16:12:49 2005 +0200
   505.3 @@ -6,7 +6,7 @@
   505.4  
   505.5  header {* Terms over an alphabet *}
   505.6  
   505.7 -theory Term = Main:
   505.8 +theory Term imports Main begin
   505.9  
  505.10  text {*
  505.11    Illustrates the list functor (essentially the same type as in @{text
   506.1 --- a/src/ZF/Induct/Tree_Forest.thy	Fri Jun 17 11:35:35 2005 +0200
   506.2 +++ b/src/ZF/Induct/Tree_Forest.thy	Fri Jun 17 16:12:49 2005 +0200
   506.3 @@ -6,7 +6,7 @@
   506.4  
   506.5  header {* Trees and forests, a mutually recursive type definition *}
   506.6  
   506.7 -theory Tree_Forest = Main:
   506.8 +theory Tree_Forest imports Main begin
   506.9  
  506.10  subsection {* Datatype definition *}
  506.11  
   507.1 --- a/src/ZF/Inductive.thy	Fri Jun 17 11:35:35 2005 +0200
   507.2 +++ b/src/ZF/Inductive.thy	Fri Jun 17 16:12:49 2005 +0200
   507.3 @@ -7,14 +7,14 @@
   507.4  
   507.5  header{*Inductive and Coinductive Definitions*}
   507.6  
   507.7 -theory Inductive = Fixedpt + QPair
   507.8 -  files
   507.9 +theory Inductive imports Fixedpt QPair
  507.10 +  uses
  507.11      "ind_syntax.ML"
  507.12      "Tools/cartprod.ML"
  507.13      "Tools/ind_cases.ML"
  507.14      "Tools/inductive_package.ML"
  507.15      "Tools/induct_tacs.ML"
  507.16 -    "Tools/primrec_package.ML":
  507.17 +    "Tools/primrec_package.ML" begin
  507.18  
  507.19  setup IndCases.setup
  507.20  setup DatatypeTactics.setup
   508.1 --- a/src/ZF/InfDatatype.thy	Fri Jun 17 11:35:35 2005 +0200
   508.2 +++ b/src/ZF/InfDatatype.thy	Fri Jun 17 16:12:49 2005 +0200
   508.3 @@ -7,7 +7,7 @@
   508.4  
   508.5  header{*Infinite-Branching Datatype Definitions*}
   508.6  
   508.7 -theory InfDatatype = Datatype + Univ + Finite + Cardinal_AC:
   508.8 +theory InfDatatype imports Datatype Univ Finite Cardinal_AC begin
   508.9  
  508.10  lemmas fun_Limit_VfromE = 
  508.11      Limit_VfromE [OF apply_funtype InfCard_csucc [THEN InfCard_is_Limit]]
   509.1 --- a/src/ZF/Integ/Bin.thy	Fri Jun 17 11:35:35 2005 +0200
   509.2 +++ b/src/ZF/Integ/Bin.thy	Fri Jun 17 16:12:49 2005 +0200
   509.3 @@ -16,7 +16,7 @@
   509.4  
   509.5  header{*Arithmetic on Binary Integers*}
   509.6  
   509.7 -theory Bin = Int + Datatype:
   509.8 +theory Bin imports Int Datatype begin
   509.9  
  509.10  consts  bin :: i
  509.11  datatype
   510.1 --- a/src/ZF/Integ/EquivClass.thy	Fri Jun 17 11:35:35 2005 +0200
   510.2 +++ b/src/ZF/Integ/EquivClass.thy	Fri Jun 17 16:12:49 2005 +0200
   510.3 @@ -7,7 +7,7 @@
   510.4  
   510.5  header{*Equivalence Relations*}
   510.6  
   510.7 -theory EquivClass = Trancl + Perm:
   510.8 +theory EquivClass imports Trancl Perm begin
   510.9  
  510.10  constdefs
  510.11  
   511.1 --- a/src/ZF/Integ/Int.thy	Fri Jun 17 11:35:35 2005 +0200
   511.2 +++ b/src/ZF/Integ/Int.thy	Fri Jun 17 16:12:49 2005 +0200
   511.3 @@ -7,7 +7,7 @@
   511.4  
   511.5  header{*The Integers as Equivalence Classes Over Pairs of Natural Numbers*}
   511.6  
   511.7 -theory Int = EquivClass + ArithSimp:
   511.8 +theory Int imports EquivClass ArithSimp begin
   511.9  
  511.10  constdefs
  511.11    intrel :: i
   512.1 --- a/src/ZF/Integ/IntArith.thy	Fri Jun 17 11:35:35 2005 +0200
   512.2 +++ b/src/ZF/Integ/IntArith.thy	Fri Jun 17 16:12:49 2005 +0200
   512.3 @@ -1,5 +1,5 @@
   512.4  
   512.5 -theory IntArith = Bin
   512.6 -files "int_arith.ML":
   512.7 +theory IntArith imports Bin
   512.8 +uses "int_arith.ML" begin
   512.9  
  512.10  end
   513.1 --- a/src/ZF/Integ/IntDiv.thy	Fri Jun 17 11:35:35 2005 +0200
   513.2 +++ b/src/ZF/Integ/IntDiv.thy	Fri Jun 17 16:12:49 2005 +0200
   513.3 @@ -31,7 +31,7 @@
   513.4  
   513.5  header{*The Division Operators Div and Mod*}
   513.6  
   513.7 -theory IntDiv = IntArith + OrderArith:
   513.8 +theory IntDiv imports IntArith OrderArith begin
   513.9  
  513.10  constdefs
  513.11    quorem :: "[i,i] => o"
   514.1 --- a/src/ZF/List.thy	Fri Jun 17 11:35:35 2005 +0200
   514.2 +++ b/src/ZF/List.thy	Fri Jun 17 16:12:49 2005 +0200
   514.3 @@ -7,7 +7,7 @@
   514.4  
   514.5  header{*Lists in Zermelo-Fraenkel Set Theory*}
   514.6  
   514.7 -theory List = Datatype + ArithSimp:
   514.8 +theory List imports Datatype ArithSimp begin
   514.9  
  514.10  consts
  514.11    list       :: "i=>i"
   515.1 --- a/src/ZF/Main.thy	Fri Jun 17 11:35:35 2005 +0200
   515.2 +++ b/src/ZF/Main.thy	Fri Jun 17 16:12:49 2005 +0200
   515.3 @@ -2,7 +2,7 @@
   515.4  
   515.5  header{*Theory Main: Everything Except AC*}
   515.6  
   515.7 -theory Main = List + IntDiv + CardinalArith:
   515.8 +theory Main imports List IntDiv CardinalArith begin
   515.9  
  515.10  (*The theory of "iterates" logically belongs to Nat, but can't go there because
  515.11    primrec isn't available into after Datatype.  The only theories defined
   516.1 --- a/src/ZF/Main_ZFC.thy	Fri Jun 17 11:35:35 2005 +0200
   516.2 +++ b/src/ZF/Main_ZFC.thy	Fri Jun 17 16:12:49 2005 +0200
   516.3 @@ -1,3 +1,3 @@
   516.4 -theory Main_ZFC = Main + InfDatatype:
   516.5 +theory Main_ZFC imports Main InfDatatype begin
   516.6  
   516.7  end
   517.1 --- a/src/ZF/Nat.thy	Fri Jun 17 11:35:35 2005 +0200
   517.2 +++ b/src/ZF/Nat.thy	Fri Jun 17 16:12:49 2005 +0200
   517.3 @@ -7,7 +7,7 @@
   517.4  
   517.5  header{*The Natural numbers As a Least Fixed Point*}
   517.6  
   517.7 -theory Nat = OrdQuant + Bool:
   517.8 +theory Nat imports OrdQuant Bool begin
   517.9  
  517.10  constdefs
  517.11    nat :: i
   518.1 --- a/src/ZF/OrdQuant.thy	Fri Jun 17 11:35:35 2005 +0200
   518.2 +++ b/src/ZF/OrdQuant.thy	Fri Jun 17 16:12:49 2005 +0200
   518.3 @@ -5,7 +5,7 @@
   518.4  
   518.5  header {*Special quantifiers*}
   518.6  
   518.7 -theory OrdQuant = Ordinal:
   518.8 +theory OrdQuant imports Ordinal begin
   518.9  
  518.10  subsection {*Quantifiers and union operator for ordinals*}
  518.11  
   519.1 --- a/src/ZF/Order.thy	Fri Jun 17 11:35:35 2005 +0200
   519.2 +++ b/src/ZF/Order.thy	Fri Jun 17 16:12:49 2005 +0200
   519.3 @@ -9,7 +9,7 @@
   519.4  
   519.5  header{*Partial and Total Orderings: Basic Definitions and Properties*}
   519.6  
   519.7 -theory Order = WF + Perm:
   519.8 +theory Order imports WF Perm begin
   519.9  
  519.10  constdefs
  519.11  
   520.1 --- a/src/ZF/OrderArith.thy	Fri Jun 17 11:35:35 2005 +0200
   520.2 +++ b/src/ZF/OrderArith.thy	Fri Jun 17 16:12:49 2005 +0200
   520.3 @@ -7,7 +7,7 @@
   520.4  
   520.5  header{*Combining Orderings: Foundations of Ordinal Arithmetic*}
   520.6  
   520.7 -theory OrderArith = Order + Sum + Ordinal:
   520.8 +theory OrderArith imports Order Sum Ordinal begin
   520.9  constdefs
  520.10  
  520.11    (*disjoint sum of two relations; underlies ordinal addition*)
   521.1 --- a/src/ZF/OrderType.thy	Fri Jun 17 11:35:35 2005 +0200
   521.2 +++ b/src/ZF/OrderType.thy	Fri Jun 17 16:12:49 2005 +0200
   521.3 @@ -7,7 +7,7 @@
   521.4  
   521.5  header{*Order Types and Ordinal Arithmetic*}
   521.6  
   521.7 -theory OrderType = OrderArith + OrdQuant + Nat:
   521.8 +theory OrderType imports OrderArith OrdQuant Nat begin
   521.9  
  521.10  text{*The order type of a well-ordering is the least ordinal isomorphic to it.
  521.11  Ordinal arithmetic is traditionally defined in terms of order types, as it is
   522.1 --- a/src/ZF/Ordinal.thy	Fri Jun 17 11:35:35 2005 +0200
   522.2 +++ b/src/ZF/Ordinal.thy	Fri Jun 17 16:12:49 2005 +0200
   522.3 @@ -7,7 +7,7 @@
   522.4  
   522.5  header{*Transitive Sets and Ordinals*}
   522.6  
   522.7 -theory Ordinal = WF + Bool + equalities:
   522.8 +theory Ordinal imports WF Bool equalities begin
   522.9  
  522.10  constdefs
  522.11  
   523.1 --- a/src/ZF/Perm.thy	Fri Jun 17 11:35:35 2005 +0200
   523.2 +++ b/src/ZF/Perm.thy	Fri Jun 17 16:12:49 2005 +0200
   523.3 @@ -11,7 +11,7 @@
   523.4  
   523.5  header{*Injections, Surjections, Bijections, Composition*}
   523.6  
   523.7 -theory Perm = func:
   523.8 +theory Perm imports func begin
   523.9  
  523.10  constdefs
  523.11  
   524.1 --- a/src/ZF/QPair.thy	Fri Jun 17 11:35:35 2005 +0200
   524.2 +++ b/src/ZF/QPair.thy	Fri Jun 17 16:12:49 2005 +0200
   524.3 @@ -11,7 +11,7 @@
   524.4  
   524.5  header{*Quine-Inspired Ordered Pairs and Disjoint Sums*}
   524.6  
   524.7 -theory QPair = Sum + func:
   524.8 +theory QPair imports Sum func begin
   524.9  
  524.10  text{*For non-well-founded data
  524.11  structures in ZF.  Does not precisely follow Quine's construction.  Thanks
   525.1 --- a/src/ZF/QUniv.thy	Fri Jun 17 11:35:35 2005 +0200
   525.2 +++ b/src/ZF/QUniv.thy	Fri Jun 17 16:12:49 2005 +0200
   525.3 @@ -7,7 +7,7 @@
   525.4  
   525.5  header{*A Small Universe for Lazy Recursive Types*}
   525.6  
   525.7 -theory QUniv = Univ + QPair:
   525.8 +theory QUniv imports Univ QPair begin
   525.9  
  525.10  (*Disjoint sums as a datatype*)
  525.11  rep_datatype 
   526.1 --- a/src/ZF/Resid/Confluence.thy	Fri Jun 17 11:35:35 2005 +0200
   526.2 +++ b/src/ZF/Resid/Confluence.thy	Fri Jun 17 16:12:49 2005 +0200
   526.3 @@ -5,7 +5,7 @@
   526.4      Logic Image: ZF
   526.5  *)
   526.6  
   526.7 -theory Confluence = Reduction:
   526.8 +theory Confluence imports Reduction begin
   526.9  
  526.10  constdefs
  526.11    confluence    :: "i=>o"
   527.1 --- a/src/ZF/Resid/Redex.thy	Fri Jun 17 11:35:35 2005 +0200
   527.2 +++ b/src/ZF/Resid/Redex.thy	Fri Jun 17 16:12:49 2005 +0200
   527.3 @@ -5,7 +5,7 @@
   527.4      Logic Image: ZF
   527.5  *)
   527.6  
   527.7 -theory Redex = Main:
   527.8 +theory Redex imports Main begin
   527.9  consts
  527.10    redexes     :: i
  527.11  
   528.1 --- a/src/ZF/Resid/Reduction.thy	Fri Jun 17 11:35:35 2005 +0200
   528.2 +++ b/src/ZF/Resid/Reduction.thy	Fri Jun 17 16:12:49 2005 +0200
   528.3 @@ -5,7 +5,7 @@
   528.4      Logic Image: ZF
   528.5  *)
   528.6  
   528.7 -theory Reduction = Residuals:
   528.8 +theory Reduction imports Residuals begin
   528.9  
  528.10  (**** Lambda-terms ****)
  528.11  
   529.1 --- a/src/ZF/Resid/Residuals.thy	Fri Jun 17 11:35:35 2005 +0200
   529.2 +++ b/src/ZF/Resid/Residuals.thy	Fri Jun 17 16:12:49 2005 +0200
   529.3 @@ -6,7 +6,7 @@
   529.4  
   529.5  *)
   529.6  
   529.7 -theory Residuals = Substitution:
   529.8 +theory Residuals imports Substitution begin
   529.9  
  529.10  consts
  529.11    Sres          :: "i"
   530.1 --- a/src/ZF/Resid/Substitution.thy	Fri Jun 17 11:35:35 2005 +0200
   530.2 +++ b/src/ZF/Resid/Substitution.thy	Fri Jun 17 16:12:49 2005 +0200
   530.3 @@ -5,7 +5,7 @@
   530.4      Logic Image: ZF
   530.5  *)
   530.6  
   530.7 -theory Substitution = Redex:
   530.8 +theory Substitution imports Redex begin
   530.9  
  530.10  consts
  530.11    lift_aux      :: "i=>i"
   531.1 --- a/src/ZF/Sum.thy	Fri Jun 17 11:35:35 2005 +0200
   531.2 +++ b/src/ZF/Sum.thy	Fri Jun 17 16:12:49 2005 +0200
   531.3 @@ -7,7 +7,7 @@
   531.4  
   531.5  header{*Disjoint Sums*}
   531.6  
   531.7 -theory Sum = Bool + equalities:
   531.8 +theory Sum imports Bool equalities begin
   531.9  
  531.10  text{*And the "Part" primitive for simultaneous recursive type definitions*}
  531.11  
   532.1 --- a/src/ZF/Trancl.thy	Fri Jun 17 11:35:35 2005 +0200
   532.2 +++ b/src/ZF/Trancl.thy	Fri Jun 17 16:12:49 2005 +0200
   532.3 @@ -7,7 +7,7 @@
   532.4  
   532.5  header{*Relations: Their General Properties and Transitive Closure*}
   532.6  
   532.7 -theory Trancl = Fixedpt + Perm:
   532.8 +theory Trancl imports Fixedpt Perm begin
   532.9  
  532.10  constdefs
  532.11    refl     :: "[i,i]=>o"
   533.1 --- a/src/ZF/UNITY/AllocBase.thy	Fri Jun 17 11:35:35 2005 +0200
   533.2 +++ b/src/ZF/UNITY/AllocBase.thy	Fri Jun 17 16:12:49 2005 +0200
   533.3 @@ -7,7 +7,7 @@
   533.4  
   533.5  header{*Common declarations for Chandy and Charpentier's Allocator*}
   533.6  
   533.7 -theory AllocBase = Follows + MultisetSum + Guar:
   533.8 +theory AllocBase imports Follows MultisetSum Guar begin
   533.9  
  533.10  consts
  533.11    tokbag   :: i  (* tokbags could be multisets...or any ordered type?*)
   534.1 --- a/src/ZF/UNITY/AllocImpl.thy	Fri Jun 17 11:35:35 2005 +0200
   534.2 +++ b/src/ZF/UNITY/AllocImpl.thy	Fri Jun 17 16:12:49 2005 +0200
   534.3 @@ -7,7 +7,7 @@
   534.4  Charpentier and Chandy, section 7 (page 17).
   534.5  *)
   534.6  
   534.7 -theory AllocImpl = ClientImpl:
   534.8 +theory AllocImpl imports ClientImpl begin
   534.9  
  534.10  consts
  534.11  
   535.1 --- a/src/ZF/UNITY/ClientImpl.thy	Fri Jun 17 11:35:35 2005 +0200
   535.2 +++ b/src/ZF/UNITY/ClientImpl.thy	Fri Jun 17 16:12:49 2005 +0200
   535.3 @@ -7,7 +7,7 @@
   535.4  *)
   535.5  
   535.6  
   535.7 -theory ClientImpl = AllocBase + Guar:
   535.8 +theory ClientImpl imports AllocBase Guar begin
   535.9  
  535.10  consts
  535.11    ask :: i (* input history:  tokens requested *)
   536.1 --- a/src/ZF/UNITY/Comp.thy	Fri Jun 17 11:35:35 2005 +0200
   536.2 +++ b/src/ZF/UNITY/Comp.thy	Fri Jun 17 16:12:49 2005 +0200
   536.3 @@ -16,7 +16,7 @@
   536.4  
   536.5  header{*Composition*}
   536.6  
   536.7 -theory Comp = Union + Increasing:
   536.8 +theory Comp imports Union Increasing begin
   536.9  
  536.10  constdefs
  536.11  
   537.1 --- a/src/ZF/UNITY/Distributor.thy	Fri Jun 17 11:35:35 2005 +0200
   537.2 +++ b/src/ZF/UNITY/Distributor.thy	Fri Jun 17 16:12:49 2005 +0200
   537.3 @@ -7,7 +7,7 @@
   537.4  Distributor specification
   537.5  *)
   537.6  
   537.7 -theory Distributor = AllocBase + Follows +  Guar + GenPrefix:
   537.8 +theory Distributor imports AllocBase Follows  Guar GenPrefix begin
   537.9  
  537.10  text{*Distributor specification (the number of outputs is Nclients)*}
  537.11  
   538.1 --- a/src/ZF/UNITY/FP.thy	Fri Jun 17 11:35:35 2005 +0200
   538.2 +++ b/src/ZF/UNITY/FP.thy	Fri Jun 17 16:12:49 2005 +0200
   538.3 @@ -10,7 +10,7 @@
   538.4  
   538.5  header{*Fixed Point of a Program*}
   538.6  
   538.7 -theory FP = UNITY:
   538.8 +theory FP imports UNITY begin
   538.9  
  538.10  constdefs   
  538.11    FP_Orig :: "i=>i"
   539.1 --- a/src/ZF/UNITY/Follows.thy	Fri Jun 17 11:35:35 2005 +0200
   539.2 +++ b/src/ZF/UNITY/Follows.thy	Fri Jun 17 16:12:49 2005 +0200
   539.3 @@ -8,7 +8,7 @@
   539.4  
   539.5  header{*The "Follows" relation of Charpentier and Sivilotte*}
   539.6  
   539.7 -theory Follows = SubstAx + Increasing:
   539.8 +theory Follows imports SubstAx Increasing begin
   539.9  
  539.10  constdefs
  539.11    Follows :: "[i, i, i=>i, i=>i] => i"
   540.1 --- a/src/ZF/UNITY/Guar.thy	Fri Jun 17 11:35:35 2005 +0200
   540.2 +++ b/src/ZF/UNITY/Guar.thy	Fri Jun 17 16:12:49 2005 +0200
   540.3 @@ -22,7 +22,7 @@
   540.4  
   540.5  header{*The Chandy-Sanders Guarantees Operator*}
   540.6  
   540.7 -theory Guar = Comp: 
   540.8 +theory Guar imports Comp begin 
   540.9  
  540.10  
  540.11  (* To be moved to theory WFair???? *)
   541.1 --- a/src/ZF/UNITY/Increasing.thy	Fri Jun 17 11:35:35 2005 +0200
   541.2 +++ b/src/ZF/UNITY/Increasing.thy	Fri Jun 17 16:12:49 2005 +0200
   541.3 @@ -9,7 +9,7 @@
   541.4  
   541.5  header{*Charpentier's "Increasing" Relation*}
   541.6  
   541.7 -theory Increasing = Constrains + Monotonicity:
   541.8 +theory Increasing imports Constrains Monotonicity begin
   541.9  
  541.10  constdefs
  541.11  
   542.1 --- a/src/ZF/UNITY/Merge.thy	Fri Jun 17 11:35:35 2005 +0200
   542.2 +++ b/src/ZF/UNITY/Merge.thy	Fri Jun 17 16:12:49 2005 +0200
   542.3 @@ -7,7 +7,7 @@
   542.4  Merge specification
   542.5  *)
   542.6  
   542.7 -theory Merge = AllocBase + Follows +  Guar + GenPrefix:
   542.8 +theory Merge imports AllocBase Follows  Guar GenPrefix begin
   542.9  
  542.10  (** Merge specification (the number of inputs is Nclients) ***)
  542.11  (** Parameter A represents the type of items to Merge **)
   543.1 --- a/src/ZF/UNITY/Monotonicity.thy	Fri Jun 17 11:35:35 2005 +0200
   543.2 +++ b/src/ZF/UNITY/Monotonicity.thy	Fri Jun 17 16:12:49 2005 +0200
   543.3 @@ -8,7 +8,7 @@
   543.4  
   543.5  header{*Monotonicity of an Operator WRT a Relation*}
   543.6  
   543.7 -theory Monotonicity = GenPrefix + MultisetSum:
   543.8 +theory Monotonicity imports GenPrefix MultisetSum begin
   543.9  
  543.10  constdefs
  543.11  
   544.1 --- a/src/ZF/UNITY/State.thy	Fri Jun 17 11:35:35 2005 +0200
   544.2 +++ b/src/ZF/UNITY/State.thy	Fri Jun 17 16:12:49 2005 +0200
   544.3 @@ -11,7 +11,7 @@
   544.4  
   544.5  header{*UNITY Program States*}
   544.6  
   544.7 -theory State = Main:
   544.8 +theory State imports Main begin
   544.9  
  544.10  consts var :: i
  544.11  datatype var = Var("i \<in> list(nat)")
   545.1 --- a/src/ZF/UNITY/UNITY.thy	Fri Jun 17 11:35:35 2005 +0200
   545.2 +++ b/src/ZF/UNITY/UNITY.thy	Fri Jun 17 16:12:49 2005 +0200
   545.3 @@ -6,7 +6,7 @@
   545.4  
   545.5  header {*The Basic UNITY Theory*}
   545.6  
   545.7 -theory UNITY = State:
   545.8 +theory UNITY imports State begin
   545.9  
  545.10  text{*The basic UNITY theory (revised version, based upon the "co" operator)
  545.11  From Misra, "A Logic for Concurrent Programming", 1994.
   546.1 --- a/src/ZF/UNITY/Union.thy	Fri Jun 17 11:35:35 2005 +0200
   546.2 +++ b/src/ZF/UNITY/Union.thy	Fri Jun 17 16:12:49 2005 +0200
   546.3 @@ -11,7 +11,7 @@
   546.4  
   546.5  *)
   546.6  
   546.7 -theory Union = SubstAx + FP:
   546.8 +theory Union imports SubstAx FP begin
   546.9  
  546.10  constdefs
  546.11  
   547.1 --- a/src/ZF/Univ.thy	Fri Jun 17 11:35:35 2005 +0200
   547.2 +++ b/src/ZF/Univ.thy	Fri Jun 17 16:12:49 2005 +0200
   547.3 @@ -11,7 +11,7 @@
   547.4  
   547.5  header{*The Cumulative Hierarchy and a Small Universe for Recursive Types*}
   547.6  
   547.7 -theory Univ = Epsilon + Cardinal:
   547.8 +theory Univ imports Epsilon Cardinal begin
   547.9  
  547.10  constdefs
  547.11    Vfrom       :: "[i,i]=>i"
   548.1 --- a/src/ZF/WF.thy	Fri Jun 17 11:35:35 2005 +0200
   548.2 +++ b/src/ZF/WF.thy	Fri Jun 17 16:12:49 2005 +0200
   548.3 @@ -17,7 +17,7 @@
   548.4  
   548.5  header{*Well-Founded Recursion*}
   548.6  
   548.7 -theory WF = Trancl:
   548.8 +theory WF imports Trancl begin
   548.9  
  548.10  constdefs
  548.11    wf           :: "i=>o"
   549.1 --- a/src/ZF/ZF.thy	Fri Jun 17 11:35:35 2005 +0200
   549.2 +++ b/src/ZF/ZF.thy	Fri Jun 17 16:12:49 2005 +0200
   549.3 @@ -6,7 +6,7 @@
   549.4  
   549.5  header{*Zermelo-Fraenkel Set Theory*}
   549.6  
   549.7 -theory ZF = FOL:
   549.8 +theory ZF imports FOL begin
   549.9  
  549.10  global
  549.11  
   550.1 --- a/src/ZF/Zorn.thy	Fri Jun 17 11:35:35 2005 +0200
   550.2 +++ b/src/ZF/Zorn.thy	Fri Jun 17 16:12:49 2005 +0200
   550.3 @@ -7,7 +7,7 @@
   550.4  
   550.5  header{*Zorn's Lemma*}
   550.6  
   550.7 -theory Zorn = OrderArith + AC + Inductive:
   550.8 +theory Zorn imports OrderArith AC Inductive begin
   550.9  
  550.10  text{*Based upon the unpublished article ``Towards the Mechanization of the
  550.11  Proofs of Some Classical Theorems of Set Theory,'' by Abrial and Laffitte.*}
   551.1 --- a/src/ZF/equalities.thy	Fri Jun 17 11:35:35 2005 +0200
   551.2 +++ b/src/ZF/equalities.thy	Fri Jun 17 16:12:49 2005 +0200
   551.3 @@ -7,7 +7,7 @@
   551.4  
   551.5  header{*Basic Equalities and Inclusions*}
   551.6  
   551.7 -theory equalities = pair:
   551.8 +theory equalities imports pair begin
   551.9  
  551.10  text{*These cover union, intersection, converse, domain, range, etc.  Philippe
  551.11  de Groote proved many of the inclusions.*}
   552.1 --- a/src/ZF/ex/BinEx.thy	Fri Jun 17 11:35:35 2005 +0200
   552.2 +++ b/src/ZF/ex/BinEx.thy	Fri Jun 17 16:12:49 2005 +0200
   552.3 @@ -6,7 +6,7 @@
   552.4  Examples of performing binary arithmetic by simplification
   552.5  *)
   552.6  
   552.7 -theory BinEx = Main:
   552.8 +theory BinEx imports Main begin
   552.9  (*All runtimes below are on a 300MHz Pentium*)
  552.10  
  552.11  lemma "#13  $+  #19 = #32"
   553.1 --- a/src/ZF/ex/CoUnit.thy	Fri Jun 17 11:35:35 2005 +0200
   553.2 +++ b/src/ZF/ex/CoUnit.thy	Fri Jun 17 16:12:49 2005 +0200
   553.3 @@ -6,7 +6,7 @@
   553.4  
   553.5  header {* Trivial codatatype definitions, one of which goes wrong! *}
   553.6  
   553.7 -theory CoUnit = Main:
   553.8 +theory CoUnit imports Main begin
   553.9  
  553.10  text {*
  553.11    See discussion in: L C Paulson.  A Concrete Final Coalgebra Theorem
   554.1 --- a/src/ZF/ex/Commutation.thy	Fri Jun 17 11:35:35 2005 +0200
   554.2 +++ b/src/ZF/ex/Commutation.thy	Fri Jun 17 16:12:49 2005 +0200
   554.3 @@ -7,7 +7,7 @@
   554.4  	ported from Isabelle/HOL  by Sidi Ould Ehmety
   554.5  *)
   554.6  
   554.7 -theory Commutation = Main:
   554.8 +theory Commutation imports Main begin
   554.9  
  554.10  constdefs
  554.11    square  :: "[i, i, i, i] => o"
   555.1 --- a/src/ZF/ex/Group.thy	Fri Jun 17 11:35:35 2005 +0200
   555.2 +++ b/src/ZF/ex/Group.thy	Fri Jun 17 16:12:49 2005 +0200
   555.3 @@ -5,7 +5,7 @@
   555.4  
   555.5  header {* Groups *}
   555.6  
   555.7 -theory Group = Main:
   555.8 +theory Group imports Main begin
   555.9  
  555.10  text{*Based on work by Clemens Ballarin, Florian Kammueller, L C Paulson and
  555.11  Markus Wenzel.*}
   556.1 --- a/src/ZF/ex/LList.thy	Fri Jun 17 11:35:35 2005 +0200
   556.2 +++ b/src/ZF/ex/LList.thy	Fri Jun 17 16:12:49 2005 +0200
   556.3 @@ -14,7 +14,7 @@
   556.4  a typing rule for it, based on some notion of "productivity..."
   556.5  *)
   556.6  
   556.7 -theory LList = Main:
   556.8 +theory LList imports Main begin
   556.9  
  556.10  consts
  556.11    llist  :: "i=>i";
   557.1 --- a/src/ZF/ex/Limit.thy	Fri Jun 17 11:35:35 2005 +0200
   557.2 +++ b/src/ZF/ex/Limit.thy	Fri Jun 17 16:12:49 2005 +0200
   557.3 @@ -19,7 +19,7 @@
   557.4  (Proofs converted to Isar and tidied up considerably by lcp)
   557.5  *)
   557.6  
   557.7 -theory Limit  =  Main:
   557.8 +theory Limit  imports  Main begin
   557.9  
  557.10  constdefs
  557.11  
   558.1 --- a/src/ZF/ex/NatSum.thy	Fri Jun 17 11:35:35 2005 +0200
   558.2 +++ b/src/ZF/ex/NatSum.thy	Fri Jun 17 16:12:49 2005 +0200
   558.3 @@ -17,7 +17,7 @@
   558.4  *)
   558.5  
   558.6  
   558.7 -theory NatSum = Main:
   558.8 +theory NatSum imports Main begin
   558.9  
  558.10  consts sum :: "[i=>i, i] => i"
  558.11  primrec 
   559.1 --- a/src/ZF/ex/Primes.thy	Fri Jun 17 11:35:35 2005 +0200
   559.2 +++ b/src/ZF/ex/Primes.thy	Fri Jun 17 16:12:49 2005 +0200
   559.3 @@ -6,7 +6,7 @@
   559.4  
   559.5  header{*The Divides Relation and Euclid's algorithm for the GCD*}
   559.6  
   559.7 -theory Primes = Main:
   559.8 +theory Primes imports Main begin
   559.9  constdefs
  559.10    divides :: "[i,i]=>o"              (infixl "dvd" 50) 
  559.11      "m dvd n == m \<in> nat & n \<in> nat & (\<exists>k \<in> nat. n = m#*k)"
   560.1 --- a/src/ZF/ex/Ramsey.thy	Fri Jun 17 11:35:35 2005 +0200
   560.2 +++ b/src/ZF/ex/Ramsey.thy	Fri Jun 17 16:12:49 2005 +0200
   560.3 @@ -26,7 +26,7 @@
   560.4  
   560.5  *)
   560.6  
   560.7 -theory Ramsey = Main:
   560.8 +theory Ramsey imports Main begin
   560.9  constdefs
  560.10    Symmetric :: "i=>o"
  560.11      "Symmetric(E) == (\<forall>x y. <x,y>:E --> <y,x>:E)"
   561.1 --- a/src/ZF/ex/Ring.thy	Fri Jun 17 11:35:35 2005 +0200
   561.2 +++ b/src/ZF/ex/Ring.thy	Fri Jun 17 16:12:49 2005 +0200
   561.3 @@ -5,7 +5,7 @@
   561.4  
   561.5  header {* Rings *}
   561.6  
   561.7 -theory Ring = Group:
   561.8 +theory Ring imports Group begin
   561.9  
  561.10  (*First, we must simulate a record declaration:
  561.11  record ring = monoid +
   562.1 --- a/src/ZF/ex/misc.thy	Fri Jun 17 11:35:35 2005 +0200
   562.2 +++ b/src/ZF/ex/misc.thy	Fri Jun 17 16:12:49 2005 +0200
   562.3 @@ -8,7 +8,7 @@
   562.4  
   562.5  header{*Miscellaneous ZF Examples*}
   562.6  
   562.7 -theory misc = Main:
   562.8 +theory misc imports Main begin
   562.9  
  562.10  subsection{*Various Small Problems*}
  562.11  
   563.1 --- a/src/ZF/func.thy	Fri Jun 17 11:35:35 2005 +0200
   563.2 +++ b/src/ZF/func.thy	Fri Jun 17 16:12:49 2005 +0200
   563.3 @@ -7,7 +7,7 @@
   563.4  
   563.5  header{*Functions, Function Spaces, Lambda-Abstraction*}
   563.6  
   563.7 -theory func = equalities + Sum:
   563.8 +theory func imports equalities Sum begin
   563.9  
  563.10  subsection{*The Pi Operator: Dependent Function Space*}
  563.11  
   564.1 --- a/src/ZF/pair.thy	Fri Jun 17 11:35:35 2005 +0200
   564.2 +++ b/src/ZF/pair.thy	Fri Jun 17 16:12:49 2005 +0200
   564.3 @@ -7,8 +7,8 @@
   564.4  
   564.5  header{*Ordered Pairs*}
   564.6  
   564.7 -theory pair = upair
   564.8 -files "simpdata.ML":
   564.9 +theory pair imports upair
  564.10 +uses "simpdata.ML" begin
  564.11  
  564.12  (** Lemmas for showing that <a,b> uniquely determines a and b **)
  564.13  
   565.1 --- a/src/ZF/upair.thy	Fri Jun 17 11:35:35 2005 +0200
   565.2 +++ b/src/ZF/upair.thy	Fri Jun 17 16:12:49 2005 +0200
   565.3 @@ -12,8 +12,8 @@
   565.4  
   565.5  header{*Unordered Pairs*}
   565.6  
   565.7 -theory upair = ZF
   565.8 -files "Tools/typechk.ML":
   565.9 +theory upair imports ZF
  565.10 +uses "Tools/typechk.ML" begin
  565.11  
  565.12  setup TypeCheck.setup
  565.13