Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static String formalize (String expr) {
- String S = "";
- for (int i = 0; i < expr.length(); i++) {
- switch(expr.charAt(i)){
- case('n'):
- switch(expr.charAt(i + 4)){
- case('f'):
- S += "NA";
- S += (expr.charAt(i + 12));
- i = i + 13;
- break;
- default:
- S += "N";
- S += (expr.charAt( i + 4));
- i = i + 5;
- break;
- }
- break;
- case('f'):
- S += "A";
- S += (expr.charAt(i + 8));
- i = i + 9;
- break;
- case('t'):
- switch(expr.charAt(i + 9)){
- case('n'):
- S += "NE";
- S += (expr.charAt(i + 12));
- i = i + 21;
- break;
- default:
- S += "E";
- S += (expr.charAt( i + 11 ));
- i = i + 20;
- break;
- }
- break;
- }
- }
- return S;
- }
- public static String naturalize (String expr) {
- String Z = "";
- for (int j = 0; j < expr.length(); j++) {
- switch(expr.charAt(j)){
- case('N'):
- switch(expr.charAt(j + 1)) {
- case('A'):
- Z += " not for all ";
- Z += (expr.charAt(j + 2));
- j = j + 2;
- break;
- case('E'):
- Z += " there is no ";
- Z += (expr.charAt(j + 2));
- Z += " so that";
- j = j + 2;
- break;
- default:
- Z += " not";
- break;
- }
- break;
- case('E'):
- Z += " there is a ";
- Z += (expr.charAt(j + 1));
- Z += " so that";
- j = j + 1;
- break;
- case('A'):
- Z += " for all ";
- Z += (expr.charAt(j + 1));
- j = j + 1;
- break;
- default:
- Z += " ";
- Z += (expr.charAt(j));
- break;
- }
- }
- return Z.substring(1);
- }
- public static String normalize (String expr) {
- String N = "";
- for (int l = 0; l < expr.length(); l++) {
- for (int k = 0; k < expr.length(); k++) {
- switch(expr.charAt(k )){
- case('N'):
- //System.out.print(k+ " ");
- switch(expr.charAt(k + 1)) {
- case('A'):
- N += "E";
- N += (expr.charAt(k + 2));
- N += "N";
- k = k + 2;
- break;
- case('E'):
- N += "A";
- N += (expr.charAt(k + 2));
- N += "N";
- k = k + 2;
- break;
- case('N'):
- k = k + 1;
- break;
- case('P'):
- N += "NP";
- k++;
- default:
- k++;
- break;
- }
- break;
- case('E'):
- N += "E";
- N += (expr.charAt(k + 1));
- k = k + 1;
- break;
- case('A'):
- N += "A";
- N += (expr.charAt(k + 1));
- k = k + 1;
- break;
- case('P'):
- N += "P";
- break;
- }
- }
- expr = N;
- N = "";
- }
- return expr;
- }
- public static void main(String args[]) {
- String expr = formalize ("not for all x there is a y so that for all z there is no w so that not P");
- System.out.println(expr);
- System.out.println(naturalize (expr));
- System.out.println(normalize (expr));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement