equal
deleted
inserted
replaced
32 val verbatim_source: Symbol.symbol list -> text |
32 val verbatim_source: Symbol.symbol list -> text |
33 val begin_theory: Url.T * string -> string -> (Url.T option * string) list -> |
33 val begin_theory: Url.T * string -> string -> (Url.T option * string) list -> |
34 (Url.T option * Url.T * bool option) list -> text -> text |
34 (Url.T option * Url.T * bool option) list -> text -> text |
35 val end_theory: text |
35 val end_theory: text |
36 val ml_file: Url.T -> string -> text |
36 val ml_file: Url.T -> string -> text |
37 val result: string -> string -> thm -> text |
37 val multi_result: string * (string * thm list) list -> text |
38 val results: string -> string -> thm list -> text |
38 val results: string -> string -> thm list -> text |
39 val theorem: string -> thm -> text |
39 val theorem: string -> thm -> text |
40 val theorems: string -> thm list -> text |
40 val theorems: string -> thm list -> text |
41 val chapter: string -> text |
41 val chapter: string -> text |
42 val section: string -> text |
42 val section: string -> text |
275 fun thm_name "" = "" |
275 fun thm_name "" = "" |
276 | thm_name a = " " ^ name (a ^ ":"); |
276 | thm_name a = " " ^ name (a ^ ":"); |
277 |
277 |
278 in |
278 in |
279 |
279 |
280 fun result k a th = para (keyword k ^ thm_name a ^ "\n" ^ thm th); |
|
281 fun results k a ths = para (cat_lines ((keyword k ^ thm_name a) :: map thm ths)); |
280 fun results k a ths = para (cat_lines ((keyword k ^ thm_name a) :: map thm ths)); |
282 |
281 |
283 val theorem = result "theorem"; |
282 fun multi_result (_, []) = "" |
|
283 | multi_result (k, ((a, ths) :: res)) = |
|
284 cat_lines (results k a ths :: map (uncurry (results "and")) res); |
|
285 |
|
286 fun theorem a th = multi_result ("theorem", [(a, [th])]); |
284 val theorems = results "theorems"; |
287 val theorems = results "theorems"; |
285 |
288 |
286 end; |
289 end; |
287 |
290 |
288 |
291 |