--# -path=.:englishExtended:abstract:common: concrete BasicEng of Basic = CatEng - [Text] ** open DictLangEng, ParadigmsEng, ResEng, Coordination, Prelude, ParamBasic, NounEng in{ lincat Class = CN ; El = NP ; Ind = NP ; Var = PN ; SubClass = {} ; SubClassC = {} ; Inherits = {} ; Desc = CN ; Formula = PolSentence; [El] = [NP]; [Class] = [CN]; Stmt = StmtS ; lin BaseClass = {s1,s2 = \\_,_ => ""; g = Neutr; lock_ListCN=<>}; ConsClass xs x = ConsCN xs x ; BaseEl c = {s1,s2 = \\_ => ""; a = agrP3 Sg; lock_ListNP=<>}; ConsEl c xs x = ConsNP xs x ; and f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "and" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; or f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "or" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; not f1 = {s = \\f,c => case c of {Neg => f1.s ! f ! Pos ; Pos => f1.s ! Indep ! Neg }; flag = f1.flag; lock_PolSentence = <>}; impl f1 f2 = {s = \\f,c => "if" ++ f1.s ! Indep ! c ++ "then" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "is" ++ "equivalent" ++ "to" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; el c1 c2 i e = e; var c1 c2 i e = UsePN e; exists C f = let np = DetCN (DetQuant IndefArt NumSg) C in {s = \\form,c => case