Commit Graph

411 Commits

Author SHA1 Message Date
Nicolas Méric 9bc493250f Enable invariants checking everywhere
By default invariants checking generates warnings.
if invariants_strict_checking theory option is enabled,
the checking generates errors.

Errors to resolve:
- Option type in invariant:
  See src/ontologies/scholarly_paper/scholarly_paper.thy:133

  doc_class technical = text_section +
     definition_list :: "string list" <=  "[]"
     status          :: status <= "description"
     formal_results  :: "thm list"
     invariant L1    :: "the (level σ) > 0"

  The attribute L1 uses "the" to project the level value
  but the default value is None:
  See src/ontologies/scholarly_paper/scholarly_paper.thy:69

  doc_class text_section = text_element +
   main_author :: "author option"  <=  None
   fixme_list  :: "string list"    <=  "[]"
   level       :: "int  option"    <=  "None"

  It generates an error in src/ontologies/CENELEC_50128/CENELEC_50128.thy
  for the Definition* commands, for which the level is not defined.
  It triggers an error because "the None" triggers an error.
  Get rid of the option type?

  The value None is used in the check function
  in examples/scholarly_paper/2020-iFM-CSP/paper.thy to check
  that a subsequent instance of the same class has a level >= than
  the previous instance of the same class.
  Update this function?

- What to do with the checking done in scholarly_paper (see check function)
  which use low level invariant to check the attributes?
  Migrate to High level invariant?
  If we change the default value of the level attribute in the text_lement
  class from "None" to "Some 0" then check function in scholarly_paper
  is triggered in examples/scholarly_paper/2020-iFM-CSP/paper.thy
  for the introduction instance "introtext" line 55 and generates
  a checking error.
  It comes from the fact that the previous instance introheader line 54
  is a section*, and then has a default value level of 1.
  Then, if the default value of the level attribute in the text_element
  is put to Some 0, the low level checking invariant function "check" in
  scholarly_paper triggers an error, because the "check" function
  checks that the instances in a sequence of the same class
  have a growing level.
  for a sequence: [("scholarly_paper.introduction", "introheader")
                  , ("scholarly_paper.introduction", "introtext")]
  introtext must have a level >= than introheader.
  Same issue with
  the examples/scholarly_paper/2018-cicm-isabelle_dof-applications/IsaDofApplications.thy
  theory.

- Bypass checking of high-level invariants
  when the class default_cid = "text",
  the top (default) document class.
  We want the class default_cid to stay abstract
  and not have the capability to be defined with attribute,
  invariants, etc.
  Hence this bypass handles docitem without a class associated,
  for example when you just want a document element to be referenceable
  without using the burden of ontology classes.
  ex: text*[sdf]\<open> Lorem ipsum @{thm refl}\<close>

  The functions get_doc_class_global and get_doc_class_local trigger
  an error when the class is "text" (default_cid),
  then the functions like check_invariants which use it will fail
  if the checking is enabled by default for all the theories.

A quick and dirty fix is proposed to pass the compilation, but must be revised.
See the diff.
2022-12-14 18:23:18 +01:00
Nicolas Méric 37d7ed7d17 Update rails for annotated text element in manual 2022-12-09 15:13:22 +01:00
Makarius Wenzel 791990039b Tuned messages and options, following Isabelle/c7f3e94fce7b 2022-12-05 12:37:59 +01:00
Makarius Wenzel 44cae2e631 More formal management of ontologies in Isabelle/ML/Isar with output via Isabelle/Scala exports 2022-12-04 00:09:29 +01:00
Makarius Wenzel b95826962f Tuned documentation 2022-12-02 20:29:40 +01:00
Makarius Wenzel 912d4bb49e Maintain document template in Isabelle/ML via Isar commands:
result becomes export artifact, which is harvested by Isabelle/Scala build engine
2022-12-02 20:05:15 +01:00
Makarius Wenzel a6c1a2baa4 Removed obsolete "extend" operation 2022-12-02 15:31:23 +01:00
Makarius Wenzel bb5963c6e2 Proper usage of dof_mkroot, although its Bash pretty-printing in LaTeX is a bit odd 2022-12-02 14:35:17 +01:00
Makarius Wenzel a6ab1e101e Update Isabelle + AFP URLs 2022-12-01 11:55:51 +01:00
Nicolas Méric 0040949cf8 Add trace-attribute term antiquotation
- Make doc_class type and constant used by regular expression
  in monitors ground
- Make class tag attribute ground (with serial())
- The previous items make possible
  the evaluation of the trace attribute
  and the definition of the trace-attribute term annotation
2022-11-24 16:47:21 +01:00
Nicolas Méric e68c332912 Fix markup for some antiquotations
Fix markup for docitem_attribute and trace_attribute
ML and text antiquotations
2022-11-24 11:22:02 +01:00
Achim D. Brucker 0b807ea4bc Merge branch 'main' into Isabelle_dev 2022-10-30 11:22:13 +00:00
Burkhart Wolff 33490f8f15 table cell syntax implemented; roughly tested. 2022-10-09 14:01:53 +02:00
Achim D. Brucker 2c1b56d277 Port to development version of Isabelle. 2022-07-23 16:14:14 +01:00
Achim D. Brucker 45e4a11a74 Clarified that before calling the install-afp script, Isabelle/DOF needs to be registered as a component. 2022-07-02 22:21:07 +01:00
Achim D. Brucker 909dda1ea2 Documented component registration. 2022-06-29 18:50:44 +01:00
Achim D. Brucker 5721398340 Documented document_build=dof option. 2022-06-26 19:14:08 +01:00
Achim D. Brucker 6c0d325673 Use full qualified name for templates. 2022-06-26 19:06:49 +01:00
Achim D. Brucker 70b2647e7c Using full-qualified names for ontologies in ROOT files. 2022-06-26 18:45:47 +01:00
Achim D. Brucker b83f7a8abb Updated manual. 2022-06-24 16:58:07 +01:00
Achim D. Brucker ef674b5ae2 Migrated, tested, and debugged new configuration setup. 2022-06-24 14:48:49 +01:00
Achim D. Brucker 41e6c9ed02 Fixed file attributes. 2022-04-18 09:44:44 +01:00
Achim D. Brucker fee83a2a29 Remove outdated and obsoleted ontologies. 2022-04-16 09:13:31 +01:00
Nicolas Méric 1457c1cb85 Fix typo in upd_meta_args rail road in manual 2022-04-08 13:04:50 +02:00
Nicolas Méric 17df6a271b Delete some TODOs, now done, in the manual 2022-04-08 12:06:28 +02:00
Nicolas Méric a331b80095 Update images for meta arguments list attribute exploration
Fix #10
2022-04-08 11:33:41 +02:00
Nicolas Méric 9603311a9a Fix DOF manual and tests to work with assert* 2022-04-01 09:54:16 +02:00
Burkhart Wolff 2351e00be6 corrected and re-inserted Ecclectic Man into build 2022-03-31 15:55:01 +02:00
Burkhart Wolff 3e99e9e013 more discrepancies in the EcclecticMan solved. 2022-03-31 15:42:18 +02:00
Burkhart Wolff d2e1d77b01 some corrections in the Eccectic RefMan 2022-03-31 13:49:46 +02:00
Burkhart Wolff 894166a630 Merge branch 'main' of https://git.logicalhacking.com/Isabelle_DOF/Isabelle_DOF 2022-03-30 16:19:36 +02:00
Burkhart Wolff 34df9f6fcd some bugs corrected 2022-03-30 16:19:31 +02:00
Nicolas Méric e4e4a708a5 Update assert* to use isabelle/DOF evaluation 2022-03-30 08:12:17 +02:00
Nicolas Méric 9cd5323063 Update DOF manual meta-types as types section
Types of the implementation language inside the HOL type system
are now represented as datatypes and not just abstract types
2022-03-29 15:22:44 +02:00
Achim D. Brucker 4a7605b43e Removed build script from default document directory layout. 2022-03-27 14:59:43 +01:00
Achim D. Brucker 7b8ae0a93d Make use of install script optional in favor of registration as Isabelle component. Style files, templates, and scripts are no longer installed into ISABELLE_USER_HOME. 2022-03-27 13:21:55 +01:00
Achim D. Brucker 7b4450450d Hide use of build script from users. 2022-03-27 12:02:15 +01:00
Achim D. Brucker 05e85edd91 Removed non-distribution note for llncs.cls. This class is now available on CTAN and part of TeXLive (at least from version 2022). 2022-03-26 21:31:05 +00:00
Achim D. Brucker 21ab0ff6b9 Removed reference to Docker use. 2022-03-26 20:08:17 +00:00
Achim D. Brucker f4286404fb Merge branch 'v1.2.x/Isabelle2021' 2022-03-26 18:25:33 +00:00
Achim D. Brucker a1d83e33ef Updated manual to reflect changes in options for install script. 2022-03-26 18:23:07 +00:00
Achim D. Brucker 1a41e92188 Minor shortenings to improve layout. 2022-03-26 17:47:40 +00:00
Achim D. Brucker 5381182ab2 Spell-checking. 2022-03-26 13:26:51 +00:00
Achim D. Brucker 76582f75fd Merge branch 'master' into porting_to_Isabelle2021-1 2022-03-23 14:33:44 +00:00
Nicolas Méric a4f39bb700 Add TODO referring to an issue in DOF Manual
Reference the issue
Isabelle_DOF/Isabelle_DOF#10
in a TODO in the DOF manual to remember to update the manual
when the issue is fixed
2022-03-23 11:27:11 +01:00
Nicolas Méric 13835fbed9 Fix typos in DOF manual, chapter 5 2022-03-23 11:17:30 +01:00
Nicolas Méric cc3f9ab402 Update DOF manual, chapter 3 and 4
- Use antiquotations when possible to reference
  classes and attributes in text (typ, type and const antiquotations)
- Add explanation for cid, obj-id and oid
- Update ML*, text* an value* railroads
- Fix typos
- Add some TODOs for the next revision of the manual
2022-03-23 09:07:43 +01:00
Achim D. Brucker 442835442f Towards Isabelle 2021-1 support. 2022-03-22 22:19:35 +00:00
Achim D. Brucker c69b11a312 First steps towards Isabelle 2021-1 support. 2022-03-22 21:47:26 +00:00
Achim D. Brucker 0c9dcfb6e1 Merge branch 'master' into porting_to_Isabelle2021-1 2022-03-21 20:32:19 +00:00