TODO.md
author wneuper <walther.neuper@jku.at>
Sun, 18 Jul 2021 18:15:27 +0200
changeset 60331 40eb8aa2b0d6
parent 60316 63cecf440235
parent 60330 e5e9a6c45597
child 60338 a2719d9fe512
permissions -rw-r--r--
merged
     1 * MW: check uses of Unsynchronized.ref vs. Synchronized.var;
     2 
     3 * MW: clarify/eliminate Isabelle/Scala add-ons (presently unused)
     4 
     5     diff -r /home/makarius/isabelle/repos-Isabelle2021/src/Pure/build-jars ./src/Pure/build-jars
     6     11a12
     7     >   src/Tools/isac/BridgeJEdit/isac.scala
     8 
     9     diff -r /home/makarius/isabelle/repos-Isabelle2021/src/Pure/Tools/scala_project.scala ./src/Pure/Tools/scala_project.scala
    10     76a77
    11     >       "src/Tools/isac/etc" -> Path.explode("isabelle.isac"),
    12 
    13 
    14 * Eliminate Thy_Info.get_theory eventually: should take theory from ancestory
    15   within current context.
    16 
    17 * Clarify symmetric rule: Thm.apply_attribute Calculation.symmetric thm context (!?);
    18 
    19 * KEStore_Elems: Should we eliminate union_overwrite and use standard namespace merge?
    20   (Exception: rlss with its special cross-theory merge.)
    21 
    22 * What is the purpose of "#numeral" instead of plain numeral?
    23 
    24 * Check/clarify Context.theory_name vs. Context.theory_long_name.
    25 
    26 * Eliminate mutable Rewrite_Ord.rew_ord' (!?);
    27 
    28 * What is the idea behind KEStore_Elems.add_thes? How to do it properly in current Isabelle?
    29 
    30 
    31 * WN: clarify add_calcs with non-existant constant "Integrate.add_new_c";
    32 
    33 * WN: proper ML antiquotations for "Tactical.Try" etc. --- be careful about unclear situations,
    34   e.g. "Tactical.Try" vs. "Lucas_Interpreter.Try";
    35 
    36 * WN: eliminate ThmC.numerals_to_Free, use existing Isabelle/HOL representation
    37     - clarify role of type "real" vs. "float" (see theory "HOL-Library.Float");
    38 
    39 * WN: proper formal context with theory HOL-Library.Float, proper antiquotation @{const_name Float};
    40   (e.g. theory ISAC_Base imports "HOL-Library.Floar" instead of HOL.Complex_Main);
    41 
    42 * WN: clarify Rule.Thm ("minus_divide_left", ...): Should this be @{rule_thm_sym} antiquotation?
    43 
    44 * WN: check remaining MethodC.prep_input that use a different theory (e.g. "Diff"):
    45   Is this really required, or can we just use the 'method' command?
    46 
    47 * WN: trim-down MethodC.prep_input and Problem.prep_input to what is really needed;
    48   improve errors via parse_term_strict;
    49 
    50 * WN: eliminate global flags like "trace_on", replace Unsynchronized.ref by
    51 
    52     ML \<open>val rewrite_trace = Attrib.setup_config_bool \<^binding>\<open>rewrite_trace\<close> (K false);\<close>
    53 
    54 * WN: Avoid Thm.get_name_hint --- somewhat fragile.
    55 
    56 * WN: eliminate ThyC.to_ctxt, use Proof_Context.init_global inline to make more
    57   clear where the normal Isabelle context-discipline is bypassed;
    58 
    59 * WN: more direct logical foundations wrt. Isabelle/HOL, eliminate many axiomatizations
    60     - quite often "axiomatization ..." can be turned into "lemma ... by auto"
    61       without further ado;
    62     - sometimes this requires to use more specific types / type classes;
    63     - sometimes this requires to use proper definitional mechanisms (e.g. 'primrec', 'fun');
    64     - a few "hard" cases will remain, to be reconsidered eventually (e.g. differentiation);
    65 
    66 * WN: eliminate ThmC.numerals_to_Free, use existing Isabelle/HOL representation, DONE partially;
    67   + TOODOO are exclusive for this changeset; most follow from TOODOO.1
    68   + TOODOO.1: exception TYPE raised by Skip_Proof.make_thm 
    69   + ? how to do algebraic operations on numerals ? Presburger ? simplifier ?
    70   + clarify role of type "real" vs. "float" (see theory "HOL-Library.Float");
    71 
    72 * WN: DONE cleanup remaining ^^^ in comments (but sometimes it is just ASCII art), partially;
    73       Left ^^^ in doc-isac (old master-theses, etc: "x^^^#2 + #8" ... # are left, too)
    74       Left "ASCII art" in case of indicating comments pointing at facts ABOVE.
    75 
    76 * WN: "fun pr_ord" is not required if used with @{make_string}, @{print}, @{print tracing};
    77       ???
    78 
    79 * WN: reduce the number of TermC.parse*;
    80     - one or two variants should suffice.