
| Current Path : /var/www/web-klick.de/dsh/90_akt/uni/java/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/90_akt/uni/java/test_lq.java |
import java.util.*;
import iftinf.utility.*;
import iftinf.Logic.*;
import iftinf.Logic.Universe.*;
class test_lq {
//************************************************
public static void main (String args[])
throws Exception {
String[] par = {"","",""};
if (args.length > 0) { par[0] = args[0]; }
if (args.length > 1) { par[1] = args[1]; }
if (args.length > 2) { par[2] = args[2]; }
if (par[0].equals("test1")) { test1(par); }
if (par[0].equals("test2")) { par[1] = "3"; par[2] = "print"; test1(par); }
if (par[0].equals("test3")) { test3(par); }
if (par[0].equals("logicparser")) { logicparser(par); }
}
//************************************************
public static void test_ok (String[] par, long tt) {
float tt1 = (float)(System.currentTimeMillis() - tt)/1000;
System.out.println("Test " + par[0] + " ok. Parameters: "
+ par[1] + ", " + par[2]
+ ". " + tt1 + " sec.");
}
//************************************************
public static void test_failed (String[] par, long tt) {
float tt1 = (float)(System.currentTimeMillis() - tt) / 1000;
System.out.println("Test " + par[0] + " failed. Parameters: "
+ par[1] + ", " + par[2]
+ ". " + tt1 + " sec.");
}
//************************************************
public static void test1 (String[] par)
throws Exception {
long tt = System.currentTimeMillis();
//try {
Operator op = new Operator();
Integer i = new Integer(par[1]);
ArrayUniverse AIx, AIy, AJx, AJy, AKx, AKy, AXx;
int[] i1 = {0,1,2,3,4,5,6,7,8,9};
int[] i2 = {0};
if (i.intValue() > 0) { AIx = new ArrayUniverse(i1); } else { AIx = new ArrayUniverse(i2); }
if (i.intValue() > 1) { AIy = new ArrayUniverse(i1); } else { AIy = new ArrayUniverse(i2); }
if (i.intValue() > 2) { AJx = new ArrayUniverse(i1); } else { AJx = new ArrayUniverse(i2); }
if (i.intValue() > 3) { AJy = new ArrayUniverse(i1); } else { AJy = new ArrayUniverse(i2); }
if (i.intValue() > 4) { AKx = new ArrayUniverse(i1); } else { AKx = new ArrayUniverse(i2); }
if (i.intValue() > 5) { AKy = new ArrayUniverse(i1); } else { AKy = new ArrayUniverse(i2); }
if (i.intValue() > 6) { AXx = new ArrayUniverse(i1); } else { AXx = new ArrayUniverse(i2); }
ArrayList i4 = new ArrayList();
i4.add(AIx);
i4.add(AIy);
i4.add(AJx);
i4.add(AJy);
i4.add(AKx);
i4.add(AKy);
i4.add(AXx);
LogicExpr le2 = new LogicExpr("St ? (x,y,z,a,b,c,w) cur x > y",i4);
Cursor lq = new Cursor(le2,op);
Object[] g;
if (par[2].equals("print")) {
while (true) {
if (!lq.cursor.hasNext()) { break; }
g = lq.cursor.model();
System.out.println(g[0]+"--"+g[1]+"--"+g[2]+"--"+
g[3]+"--"+g[4]+"--"+g[5]+"--"+g[6]);
}
} else {
while (true) {
if (!lq.cursor.hasNext()) { break; }
g = lq.cursor.model();
}
}
test_ok(par,tt);
// } catch (Exception e) { test_failed(par,tt); }
}
//************************************************
public static void test3 (String[] par)
throws Exception {
long tt = System.currentTimeMillis();
Operator op = new Operator();
String[] s = {"qq","we","erxr","x","y","aercc","w"};
ArrayList i4 = new ArrayList();
i4.add(new ArrayUniverse(s));
LogicExpr le2 = new LogicExpr("St ? (x) cur x contains \'er\'"+
" and x contains \'x\'",i4);
Cursor lq = new Cursor(le2,op);
Object[] g;
while (true) {
if (!lq.cursor.hasNext()) { break; }
g = lq.cursor.model();
System.out.println(g[0]);
}
test_ok(par,tt);
}
//************************************************
public static void logicparser (String[] par)
throws Exception {
Object obj[] = {"1","2","3"};
String test = "a * ('b + c') ==> x = c";
par[1] = test;
LogicExpr le = new LogicExpr(par[1],obj);
long tt = System.currentTimeMillis();
le = new LogicExpr(par[1],obj);
System.out.println("FML: " + par[1] + "\nUNPARSE: " + le.unparse() );
test_ok(par,tt);
}
}