-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Hello,
This is my concrete grammar:
concrete Test111 of Test11 = {
lincat
Predicate = Str;
Expr = Str ;
lin
Not e1 = "not " ++ e1 ;
Element e1 e2 = e1 ++("is "|"is an element of "|" ∈ ") ++ e2 ;
Eq e1 e2 = e1 ++ (" is "|" = ") ++ e2 ;
Neq e1 e2 = e1 ++ " is not equal to " ++ e2 ;
Nelement e1 e2 = e1 ++ " is not an element of " ++ e2 ;
Gt e1 e2 = e1 ++ (" is greater than "| " > ") ++ e2;
Lt e1 e2 = e1 ++ (" is less than "|" < ") ++ e2;
Pair e1 e2 = "a pair with " ++ e1 ++ "and " ++ e2;
Relation e1 e2 = "a relation between " ++ e1 ++ " and " ++ e2 ;
TotalFunction e1 e2 = "a total function from " ++ e1 ++ "to " ++ e2;
PartialInject e1 e2 = "a partial injection"++" from " ++ e1 ++ "to " ++ e2|e1++" ⤔"++e2;
TotalSurj e1 e2 = "a total surjection from " ++ e1 ++ " to " ++ e2 ;
CartesianProd e1 e2 = "a cartesian product of " ++ e1 ++ "and " ++ e2|e1 ++" × "++e2;
Union e1 e2 = "a union of the sets " ++ e1 ++ "and " ++ e2;
DirectProd e1 e2 = "a direct product of " ++ e1 ++ "and " ++ e2 | e1 ++ "⊗" ++e2 ;
Interval e1 e2 = "between " ++ e1 ++ "and " ++ e2 ;
Add e1 e2 = e1 ++ (" plus " | " + ") ++ e2;
Sub e1 e2 = e1 ++ " - " ++ e2 ;
Mul e1 e2 = e1 ++ " * " ++ e2 ;
Neg e = "negation of " ++ e ;
Ident e1 = e1.s ;
IntegerLiteral e1 = e1.s ;
Expr2Pred t = t ;
}
For the inputs like : p -lang=1 "b + c" | l -treebank or p -lang=1 "b < c" | l -treebank, p -lang=1 "b = c" | l -treebank... I can get the correct output.
But for the inputs with the specific operators like : p -lang=1 "b ⊗ c" | l -treebank or p -lang=1 "b ⤔ c" | l -treebank, p -lang=1 "b ∈ c" | l -treebank... my code in Jupyter keeps running with no output.

Any idea how I can fix this issue?