etc/options
author Walther Neuper <walther.neuper@jku.at>
Wed, 11 Mar 2020 15:25:52 +0100
changeset 59827 168abe8dd1e3
parent 59606 c3925099d59f
child 60065 46266dc209cd
permissions -rw-r--r--
start formally checked documentation with Lucas_Interpreter

note: the text is a partial copy from the IJCAR/ThEdu'20 paper
     1 (* :mode=isabelle-options: *)
     2 
     3 section "Document Preparation"
     4 
     5 option browser_info : bool = false
     6   -- "generate theory browser information"
     7 
     8 option document : string = ""
     9   -- "build document in given format: pdf, dvi, false"
    10 option document_output : string = ""
    11   -- "document output directory (default within $ISABELLE_BROWSER_INFO tree)"
    12 option document_variants : string = "document"
    13   -- "alternative document variants (separated by colons)"
    14 option document_tags : string = ""
    15   -- "default command tags (separated by commas)"
    16 
    17 option thy_output_display : bool = false
    18   -- "indicate output as multi-line display-style material"
    19 option thy_output_break : bool = false
    20   -- "control line breaks in non-display material"
    21 option thy_output_cartouche : bool = false
    22   -- "indicate if the output should be delimited as cartouche"
    23 option thy_output_quotes : bool = false
    24   -- "indicate if the output should be delimited via double quotes"
    25 option thy_output_margin : int = 76
    26   -- "right margin / page width for printing of display material"
    27 option thy_output_indent : int = 0
    28   -- "indentation for pretty printing of display material"
    29 option thy_output_source : bool = false
    30   -- "print original source text rather than internal representation"
    31 option thy_output_source_cartouche : bool = false
    32   -- "print original source text rather than internal representation, preserve cartouches"
    33 option thy_output_modes : string = ""
    34   -- "additional print modes for document output (separated by commas)"
    35 
    36 
    37 section "Prover Output"
    38 
    39 option show_types : bool = false
    40   -- "show type constraints when printing terms"
    41 option show_sorts : bool = false
    42   -- "show sort constraints when printing types"
    43 option show_brackets : bool = false
    44   -- "show extra brackets when printing terms/types"
    45 option show_question_marks : bool = true
    46   -- "show leading question mark of schematic variables"
    47 
    48 option show_consts : bool = false
    49   -- "show constants with types when printing proof state"
    50 option show_main_goal : bool = false
    51   -- "show main goal when printing proof state"
    52 option goals_limit : int = 10
    53   -- "maximum number of subgoals to be printed"
    54 
    55 option names_long : bool = false
    56   -- "show fully qualified names"
    57 option names_short : bool = false
    58   -- "show base names only"
    59 option names_unique : bool = true
    60   -- "show partially qualified names, as required for unique name resolution"
    61 
    62 option eta_contract : bool = true
    63   -- "print terms in eta-contracted form"
    64 
    65 option print_mode : string = ""
    66   -- "additional print modes for prover output (separated by commas)"
    67 
    68 
    69 section "Parallel Processing"
    70 
    71 public option threads : int = 0
    72   -- "maximum number of worker threads for prover process (0 = hardware max.)"
    73 option threads_trace : int = 0
    74   -- "level of tracing information for multithreading"
    75 option threads_stack_limit : real = 0.25
    76   -- "maximum stack size for worker threads (in giga words, 0 = unlimited)"
    77 
    78 public option parallel_limit : int = 0
    79   -- "approximative limit for parallel tasks (0 = unlimited)"
    80 public option parallel_print : bool = true
    81   -- "parallel and asynchronous printing of results"
    82 public option parallel_proofs : int = 1
    83   -- "level of parallel proof checking: 0, 1, 2"
    84 option parallel_subproofs_threshold : real = 0.01
    85   -- "lower bound of timing estimate for forked nested proofs (seconds)"
    86 
    87 option command_timing_threshold : real = 0.1
    88   -- "default threshold for persistent command timing (seconds)"
    89 
    90 
    91 section "Detail of Proof Checking"
    92 
    93 option record_proofs : int = -1
    94   -- "set level of proofterm recording: 0, 1, 2, negative means unchanged"
    95 option quick_and_dirty : bool = false
    96   -- "if true then some tools will OMIT some proofs"
    97 option skip_proofs : bool = false
    98   -- "skip over proofs (implicit 'sorry')"
    99 option strict_facts : bool = false
   100   -- "force lazy facts when defined in context"
   101 
   102 
   103 section "Global Session Parameters"
   104 
   105 option condition : string = ""
   106   -- "required environment variables for subsequent theories (separated by commas)"
   107 
   108 option timeout : real = 0
   109   -- "timeout for session build job (seconds > 0)"
   110 
   111 option timeout_scale : real = 1.0
   112   -- "scale factor for session timeout"
   113 
   114 option process_output_limit : int = 100
   115   -- "build process output limit (in million characters, 0 = unlimited)"
   116 
   117 option process_output_tail : int = 40
   118   -- "build process output tail shown to user (in lines, 0 = unlimited)"
   119 
   120 option profiling : string = ""
   121   -- "ML profiling (possible values: time, allocations)"
   122 
   123 option system_heaps : bool = false
   124   -- "store session heaps in $ISABELLE_HEAPS_SYSTEM, not $ISABELLE_HEAPS"
   125 
   126 
   127 section "ML System"
   128 
   129 option ML_print_depth : int = 20
   130   -- "ML print depth for toplevel pretty-printing"
   131 
   132 public option ML_exception_trace : bool = false
   133   -- "ML exception trace for toplevel command execution"
   134 
   135 public option ML_exception_debugger : bool = false
   136   -- "ML debugger exception trace for toplevel command execution"
   137 
   138 public option ML_debugger : bool = false
   139   -- "ML debugger instrumentation for newly compiled code"
   140 
   141 public option ML_statistics : bool = true
   142   -- "ML run-time system statistics"
   143 
   144 public option ML_system_64 : bool = false
   145   -- "ML system for 64bit platform is used if possible (change requires restart)"
   146 
   147 public option ML_process_policy : string = ""
   148   -- "ML process command prefix (process policy)"
   149 
   150 
   151 section "Editor Session"
   152 
   153 public option editor_load_delay : real = 0.5
   154   -- "delay for file load operations (new buffers etc.)"
   155 
   156 public option editor_input_delay : real = 0.3
   157   -- "delay for user input (text edits, cursor movement etc.)"
   158 
   159 public option editor_generated_input_delay : real = 1.0
   160   -- "delay for machine-generated input that may outperform user edits"
   161 
   162 public option editor_output_delay : real = 0.1
   163   -- "delay for prover output (markup, common messages etc.)"
   164 
   165 public option editor_consolidate_delay : real = 2.0
   166   -- "delay to consolidate status of command evaluation (execution forks)"
   167 
   168 public option editor_prune_delay : real = 15
   169   -- "delay to prune history (delete old versions)"
   170 
   171 option editor_prune_size : int = 0
   172   -- "retained size of pruned history (delete old versions)"
   173 
   174 public option editor_update_delay : real = 0.5
   175   -- "delay for physical GUI updates"
   176 
   177 public option editor_reparse_limit : int = 10000
   178   -- "maximum amount of reparsed text outside perspective"
   179 
   180 public option editor_tracing_messages : int = 1000
   181   -- "initial number of tracing messages for each command transaction (0: unbounded)"
   182 
   183 public option editor_chart_delay : real = 3.0
   184   -- "delay for chart repainting"
   185 
   186 public option editor_continuous_checking : bool = true
   187   -- "continuous checking of proof document (visible and required parts)"
   188 
   189 public option editor_output_state : bool = false
   190   -- "implicit output of proof state"
   191 
   192 option editor_execution_delay : real = 0.02
   193   -- "delay for start of execution process after document update (seconds)"
   194 
   195 option editor_syslog_limit : int = 100
   196   -- "maximum amount of buffered syslog messages"
   197 
   198 public option editor_presentation : bool = false
   199   -- "dynamic presentation while editing"
   200 
   201 
   202 section "Headless Session"
   203 
   204 option headless_check_delay : real = 0.5
   205   -- "delay for theory status check during PIDE processing (seconds)"
   206 
   207 option headless_check_limit : int = 0
   208   -- "maximum number of theory status checks (0 = unlimited)"
   209 
   210 option headless_nodes_status_delay : real = -1
   211   -- "delay for overall nodes status check during PIDE processing (seconds, disabled for < 0)"
   212 
   213 option headless_watchdog_timeout : real = 600
   214   -- "watchdog timeout for PIDE processing of broken theories (seconds, 0 = disabled)"
   215 
   216 option headless_commit_cleanup_delay : real = 60
   217   -- "delay for cleanup of already imported theories (seconds, 0 = disabled)"
   218 
   219 
   220 section "Miscellaneous Tools"
   221 
   222 public option find_theorems_limit : int = 40
   223   -- "limit of displayed results"
   224 
   225 public option find_theorems_tactic_limit : int = 5
   226   -- "limit of tactic search for 'solves' criterion"
   227 
   228 
   229 section "Completion"
   230 
   231 public option completion_limit : int = 40
   232   -- "limit for completion within the formal context"
   233 
   234 public option completion_path_ignore : string = "*~:*.marks:*.orig:*.rej:.DS_Store"
   235   -- "glob patterns to ignore in file-system path completion (separated by colons)"
   236 
   237 
   238 section "Spell Checker"
   239 
   240 public option spell_checker : bool = true
   241   -- "enable spell-checker for prose words within document text, comments etc."
   242 
   243 public option spell_checker_dictionary : string = "en"
   244   -- "spell-checker dictionary name"
   245 
   246 public option spell_checker_include : string = "words,comment,comment1,comment2,comment3,ML_comment,SML_comment"
   247   -- "included markup elements for spell-checker (separated by commas)"
   248 
   249 public option spell_checker_exclude : string = "document_marker,antiquoted,raw_text"
   250   -- "excluded markup elements for spell-checker (separated by commas)"
   251 
   252 
   253 section "Secure Shell"
   254 
   255 option ssh_config_dir : string = "$HOME/.ssh"
   256   -- "SSH configuration directory"
   257 
   258 option ssh_config_file : string = "$HOME/.ssh/config"
   259   -- "main SSH configuration file"
   260 
   261 option ssh_identity_files : string = "$HOME/.ssh/id_dsa:$HOME/.ssh/id_ecdsa:$HOME/.ssh/id_rsa"
   262   -- "possible SSH identity files (separated by colons)"
   263 
   264 option ssh_compression : bool = true
   265   -- "enable SSH compression"
   266 
   267 option ssh_connect_timeout : real = 60
   268   -- "SSH connection timeout (seconds)"
   269 
   270 option ssh_alive_interval : real = 30
   271   -- "time interval to keep SSH server connection alive (seconds)"
   272 
   273 option ssh_alive_count_max : int = 3
   274   -- "maximum number of messages to keep SSH server connection alive"
   275 
   276 
   277 section "Theory Export"
   278 
   279 option export_document : bool = false
   280 
   281 option export_theory : bool = false
   282 
   283 
   284 section "Theory update"
   285 
   286 option update_inner_syntax_cartouches : bool = false
   287   -- "update inner syntax (types, terms, etc.) to use cartouches"
   288 
   289 option update_mixfix_cartouches : bool = false
   290   -- "update mixfix templates to use cartouches instead of double quotes"
   291 
   292 option update_control_cartouches : bool = false
   293   -- "update antiquotations to use control symbol with cartouche argument"
   294 
   295 option update_path_cartouches : bool = false
   296   -- "update file-system paths to use cartouches"
   297 
   298 
   299 section "Build Database"
   300 
   301 option build_database_server : bool = false
   302 option build_database_user : string = ""
   303 option build_database_password : string = ""
   304 option build_database_name : string = ""
   305 option build_database_host : string = ""
   306 option build_database_port : int = 0
   307 option build_database_ssh_host : string = ""
   308 option build_database_ssh_user : string = ""
   309 option build_database_ssh_port : int = 0
   310 
   311 
   312 section "Build Log Database"
   313 
   314 option build_log_database_user : string = ""
   315 option build_log_database_password : string = ""
   316 option build_log_database_name : string = ""
   317 option build_log_database_host : string = ""
   318 option build_log_database_port : int = 0
   319 option build_log_ssh_host : string = ""
   320 option build_log_ssh_user : string = ""
   321 option build_log_ssh_port : int = 0
   322 option build_log_history : int = 30  -- "length of relevant history (in days)"
   323 option build_log_transaction_size : int = 1  -- "number of log files for each db update"
   324 
   325 
   326 section "Isabelle/Scala/ML system channel"
   327 
   328 option system_channel_address : string = ""
   329 option system_channel_password : string = ""