akargl@42176
|
1 |
(* Title: tests for mathml.sml
|
akargl@42176
|
2 |
Author: Walther Neuper 060311
|
neuper@37906
|
3 |
(c) isac-team 2006
|
neuper@37906
|
4 |
*)
|
neuper@37906
|
5 |
"-----------------------------------------------------------------";
|
neuper@37906
|
6 |
"table of contents -----------------------------------------------";
|
neuper@37906
|
7 |
"-----------------------------------------------------------------";
|
neuper@37906
|
8 |
"within struct ---------------------------------------------------";
|
neuper@37906
|
9 |
"-----------------------------------------------------------------";
|
neuper@37906
|
10 |
"--------- encode ^^^ -> ^ ---------------------------------------";
|
neuper@37906
|
11 |
"--------- encode < -> < and > -> > --------------------------";
|
wneuper@59177
|
12 |
"--------- fun rm_doublets '-4 * b ^^^^^^^^^ 2 / (...' -----------";
|
wneuper@59177
|
13 |
"--------- fun decode '-4 * b ^^^^^^^^^ 2 / (...' ----------------";
|
neuper@37906
|
14 |
"-----------------------------------------------------------------";
|
neuper@37906
|
15 |
"exported from struct --------------------------------------------";
|
neuper@37906
|
16 |
"-----------------------------------------------------------------";
|
neuper@37906
|
17 |
"--------- ... ---------------------------------------------------";
|
neuper@37906
|
18 |
"-----------------------------------------------------------------";
|
neuper@37906
|
19 |
|
neuper@37906
|
20 |
|
neuper@37906
|
21 |
|
neuper@37906
|
22 |
"-----------------------------------------------------------------";
|
neuper@37906
|
23 |
"within struct ---------------------------------------------------";
|
neuper@37906
|
24 |
"-----------------------------------------------------------------";
|
neuper@37906
|
25 |
(*==================================================================*)
|
neuper@37906
|
26 |
|
neuper@37906
|
27 |
"--------- encode ^^^ -> ^ ---------------------------------------";
|
neuper@37906
|
28 |
"--------- encode ^^^ -> ^ ---------------------------------------";
|
neuper@37906
|
29 |
"--------- encode ^^^ -> ^ ---------------------------------------";
|
neuper@37906
|
30 |
val str = "a^^^2+b^^^2=c^^^2";
|
neuper@37906
|
31 |
if decode str = "a^2+b^2=c^2" then ()
|
neuper@38031
|
32 |
else error "mathml.sml: diff.behav. in encode ^^^ -> ^";
|
neuper@37906
|
33 |
|
akargl@42176
|
34 |
"--------- encode < -> < and > -> > --------------------------";
|
akargl@42176
|
35 |
"--------- encode < -> < and > -> > --------------------------";
|
akargl@42176
|
36 |
"--------- encode < -> < and > -> > --------------------------";
|
neuper@37906
|
37 |
val str = "?bdv occurs_in ?b; 0 < ?n |] ==> ?a / ?b ^ ?n = ?a * ?b ^ - ?n";
|
akargl@42176
|
38 |
if decode str = "?bdv occurs_in ?b; 0 < ?n |] ==> ?a / ?b ^ ?n = ?a * ?b ^ - ?n" then ()
|
akargl@42176
|
39 |
else error "mathml.sml: diff.behav. in encode '<' and '>'";
|
neuper@37906
|
40 |
|
akargl@42176
|
41 |
(*========== inhibit exn AK110725 ================================================
|
neuper@37906
|
42 |
"----- check 'manually' the xml-output of calling functions ------";
|
akargl@42176
|
43 |
formula2xml 1 (str2term str);
|
neuper@37906
|
44 |
|
akargl@42176
|
45 |
(* AK110725
|
akargl@42176
|
46 |
(*str2term str; (* ERROR: Inner syntax error at "; 0 < ?n |] ==> ?a / ?b ^ ?n = ?a * ?b ^ - ?n"
|
akargl@42176
|
47 |
Failed to parse term*)*)
|
akargl@42176
|
48 |
"~~~~~ fun str2term, args:"; val (str) = (str);
|
akargl@42176
|
49 |
Thy_Info.get_theory "Isac";
|
akargl@42176
|
50 |
|
akargl@42176
|
51 |
parse_patt;
|
akargl@42176
|
52 |
parse_patt (Thy_Info.get_theory "Isac");
|
akargl@42176
|
53 |
(*parse_patt (Thy_Info.get_theory "Isac") str; (* ERROR: Inner syntax error at "; 0 < ?n |] ==> ?a / ?b ^ ?n = ?a * ?b ^ - ?n"
|
akargl@42176
|
54 |
Failed to parse term*)*)
|
akargl@42176
|
55 |
|
akargl@42176
|
56 |
"~~~~~ fun parse_patt, args:"; val (thy, str) = ((Thy_Info.get_theory "Isac"), str);
|
akargl@42176
|
57 |
(thy, str)
|
akargl@42176
|
58 |
|>> thy2ctxt
|
neuper@48761
|
59 |
(*|-> Proof_Context.read_term_pattern (*ERROR: Inner syntax error at "; 0 < ?n |] ==> ?a / ?b ^ ?n = ?a * ?b ^ - ?n"
|
akargl@42176
|
60 |
Failed to parse term*)*)
|
akargl@42176
|
61 |
|
neuper@48761
|
62 |
Proof_Context.read_term_pattern;
|
akargl@42176
|
63 |
(@{theory "Isac"}, str) |>> thy2ctxt;
|
neuper@48761
|
64 |
"~~~~~ fun Proof_Context.read_term_pattern, args:"; val () = ();
|
akargl@42176
|
65 |
(*AK110725 To be continued...*)
|
akargl@42176
|
66 |
*)
|
neuper@37906
|
67 |
(*==================================================================*)
|
neuper@37906
|
68 |
"-----------------------------------------------------------------";
|
neuper@37906
|
69 |
"exported from struct --------------------------------------------";
|
neuper@37906
|
70 |
"-----------------------------------------------------------------";
|
akargl@42176
|
71 |
========== inhibit exn AK110725 ================================================*)
|
wneuper@59177
|
72 |
|
wneuper@59177
|
73 |
"--------- fun rm_doublets '-4 * b ^^^^^^^^^ 2 / (...' -----------";
|
wneuper@59177
|
74 |
"--------- fun rm_doublets '-4 * b ^^^^^^^^^ 2 / (...' -----------";
|
wneuper@59177
|
75 |
"--------- fun rm_doublets '-4 * b ^^^^^^^^^ 2 / (...' -----------";
|
wneuper@59177
|
76 |
val c = "^";
|
wneuper@59177
|
77 |
val cs = ["^","^","^","d","e"];
|
wneuper@59177
|
78 |
if rm_doublets c [] cs = Symbol.explode "^de"
|
wneuper@59177
|
79 |
then () else error "rm_doublets '^^^de' CHANGED";
|
wneuper@59177
|
80 |
|
wneuper@59177
|
81 |
val cs = ["a","b","^","^","^","d","e"];
|
wneuper@59177
|
82 |
if rm_doublets c [] cs = Symbol.explode "ab^de"
|
wneuper@59177
|
83 |
then () else error "rm_doublets 'ab^^^de' CHANGED";
|
wneuper@59177
|
84 |
|
wneuper@59177
|
85 |
val cstr =
|
wneuper@59177
|
86 |
"-4 * b ^^^^^^^^^ 2 / (a + b) + 4 * a ^^^^^^^^^ 2 / (a + b) -4 * b ^ 2 / (a + b) + 4 * a ^ 2 / (a + b)";
|
wneuper@59177
|
87 |
val cs = Symbol.explode cstr;
|
wneuper@59177
|
88 |
if rm_doublets c [] cs = Symbol.explode
|
wneuper@59177
|
89 |
"-4 * b ^ 2 / (a + b) + 4 * a ^ 2 / (a + b) -4 * b ^ 2 / (a + b) + 4 * a ^ 2 / (a + b)"
|
wneuper@59177
|
90 |
then () else error "rm_doublets '-4 * b ^^^^^..' CHANGED";
|
wneuper@59177
|
91 |
|
wneuper@59177
|
92 |
"--------- fun decode '-4 * b ^^^^^^^^^ 2 / (...' ----------------";
|
wneuper@59177
|
93 |
"--------- fun decode '-4 * b ^^^^^^^^^ 2 / (...' ----------------";
|
wneuper@59177
|
94 |
"--------- fun decode '-4 * b ^^^^^^^^^ 2 / (...' ----------------";
|
wneuper@59177
|
95 |
if encode cstr =
|
wneuper@59177
|
96 |
"-4 * b ^^^ 2 / (a + b) + 4 * a ^^^ 2 / (a + b) -4 * b ^^^ 2 / (a + b) + 4 * a ^^^ 2 / (a + b)"
|
wneuper@59177
|
97 |
then () else error "encode '-4 * b ^^^^^..' CHANGED";
|
wneuper@59177
|
98 |
|