Search code examples
latexisabelle

Isabelle's document preparation


I would like to obtain the LaTeX code associated with this theory. Previous answers only provide links to the documentation. Let me describe what I did.

I went to the directory of Hales.thy and executed isabelle mkroot, followed by isabelle build -D ., which generated a file named document and a *.pdf file which was suspiciously (nearly) empty. Modifications of this command by adding Hales.thy as a parameter didn't succeed.

I would appreciate if someone could describe briefly the commands needed.


Solution

    1. As a precaution, copy the file Hales.thy into a new directory that does not contain any other files and run isabelle mkroot again.
    2. If I understand correctly, your theory contains sorry. In this case, for the build to succeed you need to enable the quick_and_dirty mode. For this, before the first occurrence of sorry in your theory file, you need to insert declare [[quick_and_dirty=true]].
    3. Your theory contains raw text that is not suitably formatted. Try replacing the relevant lines with the following: text‹The case \<^text>‹t^2 = 1› corresponds to a product of intersecting lines which cannot be a group› and text‹The case \<^text>‹t = 0› corresponds to a circle which has been treated before›.
    4. Once this is done, you should be able to use the ROOT file in the appendix below. As you can see, I have specified the theory file explicitly and also added the relevant imported sessions.

    Appendix

    session Hales = HOL +
      options [document = pdf, document_output = "output"]
    sessions
      "HOL-Library"
      "HOL-Algebra"
    theories
      "Hales"
    document_files
      "root.tex"