src/HOL/HOLCF/IsaMakefile
author huffman
Sun Dec 19 05:15:31 2010 -0800 (2010-12-19)
changeset 41286 3d7685a4a5ff
parent 41285 efd23c1d9886
child 43524 d75e285fcf3e
permissions -rw-r--r--
reintroduce 'bifinite' class, now with existentially-quantified approx function (cf. b525988432e9)
wenzelm@2494
     1
#
wenzelm@2494
     2
# IsaMakefile for HOLCF
wenzelm@2494
     3
#
wenzelm@2494
     4
wenzelm@4518
     5
## targets
wenzelm@2494
     6
wenzelm@4518
     7
default: HOLCF
wenzelm@4518
     8
images: HOLCF IOA
wenzelm@37779
     9
test: \
wenzelm@37779
    10
  HOLCF-FOCUS \
wenzelm@37779
    11
  HOLCF-IMP \
huffman@37110
    12
  HOLCF-Library \
huffman@37000
    13
  HOLCF-Tutorial \
wenzelm@37779
    14
  HOLCF-ex \
wenzelm@37779
    15
  IOA-ABP \
wenzelm@37779
    16
  IOA-NTP \
wenzelm@37779
    17
  IOA-Storage \
wenzelm@37779
    18
  IOA-ex
wenzelm@4518
    19
all: images test
wenzelm@4518
    20
wenzelm@4518
    21
wenzelm@4518
    22
## global settings
wenzelm@4518
    23
wenzelm@4518
    24
SRC = $(ISABELLE_HOME)/src
wenzelm@3118
    25
OUT = $(ISABELLE_OUTPUT)
wenzelm@4447
    26
LOG = $(OUT)/log
wenzelm@2494
    27
wenzelm@4518
    28
wenzelm@4518
    29
## HOLCF
wenzelm@4518
    30
wenzelm@4518
    31
HOLCF: HOL $(OUT)/HOLCF
wenzelm@4518
    32
wenzelm@4518
    33
HOL:
wenzelm@28500
    34
	@cd $(SRC)/HOL; $(ISABELLE_TOOL) make HOL
wenzelm@2494
    35
huffman@27420
    36
$(OUT)/HOLCF: $(OUT)/HOL \
huffman@27420
    37
  ROOT.ML \
huffman@27420
    38
  Adm.thy \
huffman@27420
    39
  Algebraic.thy \
huffman@41286
    40
  Bifinite.thy \
huffman@27420
    41
  Cfun.thy \
huffman@41284
    42
  Compact_Basis.thy \
huffman@27420
    43
  Completion.thy \
huffman@27420
    44
  Cont.thy \
huffman@27420
    45
  ConvexPD.thy \
huffman@40772
    46
  Cpodef.thy \
huffman@27420
    47
  Cprod.thy \
huffman@27420
    48
  Discrete.thy \
huffman@27420
    49
  Deflation.thy \
huffman@27420
    50
  Domain.thy \
huffman@35652
    51
  Domain_Aux.thy \
huffman@27420
    52
  Fixrec.thy \
huffman@27420
    53
  Fix.thy \
huffman@40001
    54
  Fun_Cpo.thy \
huffman@27420
    55
  HOLCF.thy \
huffman@27420
    56
  Lift.thy \
huffman@27420
    57
  LowerPD.thy \
huffman@40502
    58
  Map_Functions.thy \
huffman@27420
    59
  One.thy \
huffman@27420
    60
  Pcpo.thy \
huffman@40502
    61
  Plain_HOLCF.thy \
huffman@27420
    62
  Porder.thy \
huffman@35473
    63
  Powerdomains.thy \
huffman@29530
    64
  Product_Cpo.thy \
huffman@41285
    65
  Representable.thy \
huffman@40592
    66
  Sfun.thy \
huffman@27420
    67
  Sprod.thy \
huffman@27420
    68
  Ssum.thy \
huffman@27420
    69
  Tr.thy \
huffman@27420
    70
  Universal.thy \
huffman@27420
    71
  UpperPD.thy \
huffman@27420
    72
  Up.thy \
huffman@27420
    73
  Tools/cont_consts.ML \
huffman@27420
    74
  Tools/cont_proc.ML \
huffman@35475
    75
  Tools/holcf_library.ML \
huffman@40040
    76
  Tools/Domain/domain.ML \
haftmann@32126
    77
  Tools/Domain/domain_axioms.ML \
huffman@35473
    78
  Tools/Domain/domain_constructors.ML \
huffman@40040
    79
  Tools/Domain/domain_induction.ML \
huffman@33795
    80
  Tools/Domain/domain_isomorphism.ML \
huffman@35530
    81
  Tools/Domain/domain_take_proofs.ML \
huffman@40772
    82
  Tools/cpodef.ML \
huffman@40575
    83
  Tools/domaindef.ML \
haftmann@31738
    84
  Tools/fixrec.ML \
huffman@27420
    85
  document/root.tex
huffman@40774
    86
	@$(ISABELLE_TOOL) usedir -b -g true $(OUT)/HOL HOLCF
wenzelm@2494
    87
wenzelm@4518
    88
huffman@37000
    89
## HOLCF-Tutorial
huffman@37000
    90
huffman@37000
    91
HOLCF-Tutorial: HOLCF $(LOG)/HOLCF-Tutorial.gz
huffman@37000
    92
huffman@37000
    93
$(LOG)/HOLCF-Tutorial.gz: $(OUT)/HOLCF \
huffman@37000
    94
  Tutorial/Domain_ex.thy \
huffman@37000
    95
  Tutorial/Fixrec_ex.thy \
huffman@37000
    96
  Tutorial/New_Domain.thy \
huffman@37000
    97
  Tutorial/document/root.tex \
huffman@37000
    98
  Tutorial/ROOT.ML
huffman@37000
    99
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF Tutorial
huffman@37000
   100
huffman@37000
   101
huffman@37110
   102
## HOLCF-Library
huffman@37110
   103
huffman@37110
   104
HOLCF-Library: HOLCF $(LOG)/HOLCF-Library.gz
huffman@37110
   105
huffman@37110
   106
$(LOG)/HOLCF-Library.gz: $(OUT)/HOLCF \
huffman@39999
   107
  Library/Defl_Bifinite.thy \
huffman@41112
   108
  Library/Bool_Discrete.thy \
huffman@41112
   109
  Library/Char_Discrete.thy \
huffman@41112
   110
  Library/HOL_Cpo.thy \
huffman@41112
   111
  Library/Int_Discrete.thy \
huffman@39143
   112
  Library/List_Cpo.thy \
huffman@41112
   113
  Library/List_Predomain.thy \
huffman@41112
   114
  Library/Nat_Discrete.thy \
huffman@41112
   115
  Library/Option_Cpo.thy \
huffman@37110
   116
  Library/Stream.thy \
huffman@37111
   117
  Library/Sum_Cpo.thy \
huffman@37110
   118
  Library/HOLCF_Library.thy \
wenzelm@38137
   119
  Library/ROOT.ML
wenzelm@38137
   120
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF Library
huffman@37110
   121
huffman@37110
   122
wenzelm@4518
   123
## HOLCF-IMP
wenzelm@2494
   124
wenzelm@4518
   125
HOLCF-IMP: HOLCF $(LOG)/HOLCF-IMP.gz
wenzelm@4518
   126
kleing@12433
   127
$(LOG)/HOLCF-IMP.gz: $(OUT)/HOLCF IMP/HoareEx.thy \
wenzelm@12599
   128
  IMP/Denotational.thy IMP/ROOT.ML IMP/document/root.tex
wenzelm@28500
   129
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF IMP
wenzelm@2494
   130
wenzelm@2494
   131
wenzelm@4518
   132
## HOLCF-ex
wenzelm@4518
   133
wenzelm@4518
   134
HOLCF-ex: HOLCF $(LOG)/HOLCF-ex.gz
wenzelm@2494
   135
huffman@30920
   136
$(LOG)/HOLCF-ex.gz: $(OUT)/HOLCF \
huffman@40774
   137
  ../Library/Nat_Infinity.thy \
huffman@30920
   138
  ex/Dagstuhl.thy \
huffman@30920
   139
  ex/Dnat.thy \
huffman@35167
   140
  ex/Domain_Proofs.thy \
huffman@30920
   141
  ex/Fix2.thy \
huffman@30920
   142
  ex/Focus_ex.thy \
huffman@30920
   143
  ex/Hoare.thy \
huffman@35932
   144
  ex/Letrec.thy \
huffman@30920
   145
  ex/Loop.thy \
huffman@37109
   146
  ex/Pattern_Match.thy \
huffman@29992
   147
  ex/Powerdomain_ex.thy \
huffman@30920
   148
  ex/ROOT.ML
wenzelm@28500
   149
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF ex
mueller@3081
   150
mueller@3081
   151
oheimb@11350
   152
## HOLCF-FOCUS
oheimb@11350
   153
oheimb@11350
   154
HOLCF-FOCUS: HOLCF $(LOG)/HOLCF-FOCUS.gz
oheimb@11350
   155
huffman@35214
   156
$(LOG)/HOLCF-FOCUS.gz: $(OUT)/HOLCF \
huffman@37110
   157
  Library/Stream.thy \
huffman@35214
   158
  FOCUS/Fstreams.thy \
huffman@19759
   159
  FOCUS/Fstream.thy FOCUS/FOCUS.thy \
huffman@40774
   160
  FOCUS/Stream_adm.thy ../Library/Continuity.thy \
huffman@19759
   161
  FOCUS/Buffer.thy FOCUS/Buffer_adm.thy
wenzelm@28500
   162
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF FOCUS
oheimb@11350
   163
wenzelm@4518
   164
## IOA
wenzelm@4518
   165
wenzelm@4518
   166
IOA: HOLCF $(OUT)/IOA
wenzelm@4518
   167
wenzelm@19741
   168
$(OUT)/IOA: $(OUT)/HOLCF IOA/ROOT.ML IOA/meta_theory/Traces.thy        \
wenzelm@19741
   169
  IOA/meta_theory/Asig.thy IOA/meta_theory/CompoScheds.thy	       \
wenzelm@19741
   170
  IOA/meta_theory/CompoTraces.thy IOA/meta_theory/Seq.thy	       \
wenzelm@19741
   171
  IOA/meta_theory/RefCorrectness.thy IOA/meta_theory/Automata.thy      \
wenzelm@19741
   172
  IOA/meta_theory/ShortExecutions.thy IOA/meta_theory/IOA.thy	       \
wenzelm@19741
   173
  IOA/meta_theory/Sequence.thy IOA/meta_theory/CompoExecs.thy	       \
wenzelm@19741
   174
  IOA/meta_theory/RefMappings.thy IOA/meta_theory/Compositionality.thy \
wenzelm@19741
   175
  IOA/meta_theory/TL.thy IOA/meta_theory/TLS.thy		       \
wenzelm@19741
   176
  IOA/meta_theory/LiveIOA.thy IOA/meta_theory/Pred.thy		       \
wenzelm@19741
   177
  IOA/meta_theory/Abstraction.thy IOA/meta_theory/Simulations.thy      \
wenzelm@37785
   178
  IOA/meta_theory/SimCorrectness.thy
wenzelm@28500
   179
	@cd IOA; $(ISABELLE_TOOL) usedir -b $(OUT)/HOLCF IOA
mueller@3081
   180
mueller@3081
   181
wenzelm@4518
   182
## IOA-ABP
wenzelm@4518
   183
wenzelm@4518
   184
IOA-ABP: IOA $(LOG)/IOA-ABP.gz
mueller@3081
   185
wenzelm@4518
   186
$(LOG)/IOA-ABP.gz: $(OUT)/IOA IOA/ABP/Abschannel.thy \
nipkow@8602
   187
  IOA/ABP/Abschannel_finite.thy IOA/ABP/Action.thy \
wenzelm@19738
   188
  IOA/ABP/Check.ML IOA/ABP/Correctness.thy \
wenzelm@4518
   189
  IOA/ABP/Env.thy IOA/ABP/Impl.thy IOA/ABP/Impl_finite.thy \
wenzelm@19738
   190
  IOA/ABP/Lemmas.thy IOA/ABP/Packet.thy \
wenzelm@4518
   191
  IOA/ABP/ROOT.ML IOA/ABP/Receiver.thy IOA/ABP/Sender.thy \
wenzelm@4518
   192
  IOA/ABP/Spec.thy
wenzelm@28500
   193
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA ABP
mueller@3081
   194
wenzelm@4518
   195
## IOA-NTP
wenzelm@4518
   196
wenzelm@4518
   197
IOA-NTP: IOA $(LOG)/IOA-NTP.gz
wenzelm@4518
   198
wenzelm@19739
   199
$(LOG)/IOA-NTP.gz: $(OUT)/IOA \
wenzelm@19739
   200
  IOA/NTP/Abschannel.thy IOA/NTP/Action.thy IOA/NTP/Correctness.thy \
wenzelm@19739
   201
  IOA/NTP/Impl.thy IOA/NTP/Lemmas.thy IOA/NTP/Multiset.thy \
wenzelm@19739
   202
  IOA/NTP/Packet.thy IOA/NTP/ROOT.ML IOA/NTP/Receiver.thy IOA/NTP/Sender.thy \
wenzelm@4518
   203
  IOA/NTP/Spec.thy
wenzelm@28500
   204
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA NTP
mueller@3081
   205
wenzelm@3951
   206
wenzelm@6010
   207
## IOA-Storage
wenzelm@6010
   208
wenzelm@6010
   209
IOA-Storage: IOA $(LOG)/IOA-Storage.gz
wenzelm@6010
   210
wenzelm@19740
   211
$(LOG)/IOA-Storage.gz: $(OUT)/IOA IOA/Storage/Action.thy \
wenzelm@17238
   212
  IOA/Storage/Correctness.thy IOA/Storage/Impl.thy \
wenzelm@6011
   213
  IOA/Storage/ROOT.ML IOA/Storage/Spec.thy
wenzelm@28500
   214
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA Storage
wenzelm@6010
   215
wenzelm@6010
   216
mueller@6475
   217
## IOA-ex
mueller@6475
   218
mueller@6475
   219
IOA-ex: IOA $(LOG)/IOA-ex.gz
mueller@6475
   220
wenzelm@19740
   221
$(LOG)/IOA-ex.gz: $(OUT)/IOA IOA/ex/ROOT.ML IOA/ex/TrivEx.thy IOA/ex/TrivEx2.thy
wenzelm@28500
   222
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA ex
mueller@6475
   223
mueller@6475
   224
wenzelm@4518
   225
## clean
wenzelm@4447
   226
wenzelm@4447
   227
clean:
wenzelm@33450
   228
	@rm -f $(OUT)/HOLCF $(LOG)/HOLCF.gz $(LOG)/HOLCF-IMP.gz	\
wenzelm@33450
   229
	  $(LOG)/HOLCF-ex.gz $(LOG)/HOLCF-FOCUS.gz $(OUT)/IOA	\
wenzelm@33450
   230
	  $(LOG)/IOA.gz $(LOG)/IOA-ABP.gz $(LOG)/IOA-NTP.gz	\
wenzelm@37779
   231
	  $(LOG)/IOA-Storage.gz $(LOG)/HOLCF-Library.gz		\
huffman@37000
   232
	  $(LOG)/IOA-ex.gz $(LOG)/HOLCF-Tutorial.gz