mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
gf-book web page index and toc
This commit is contained in:
39
gf-book/examples/chapter9/Semantics.gf
Normal file
39
gf-book/examples/chapter9/Semantics.gf
Normal file
@@ -0,0 +1,39 @@
|
||||
abstract Semantics = Grammar, Logic ** {
|
||||
fun
|
||||
iS : S -> Prop ;
|
||||
iCl : Cl -> Prop ;
|
||||
iNP : NP -> (Ind -> Prop) -> Prop ;
|
||||
iVP : VP -> Ind -> Prop ;
|
||||
iAP : AP -> Ind -> Prop ;
|
||||
iCN : CN -> Ind -> Prop ;
|
||||
iDet : Det -> (Ind -> Prop) -> (Ind -> Prop) -> Prop ;
|
||||
iN : N -> Ind -> Prop ;
|
||||
iA : A -> Ind -> Prop ;
|
||||
iV : V -> Ind -> Prop ;
|
||||
iV2 : V2 -> Ind -> Ind -> Prop ;
|
||||
iAdA : AdA -> (Ind -> Prop) -> Ind -> Prop ;
|
||||
iTense : Tense -> Prop -> Prop ;
|
||||
iPol : Pol -> Prop -> Prop ;
|
||||
iConj : Conj -> Prop -> Prop -> Prop ;
|
||||
def
|
||||
iS (UseCl t p cl) = iTense t (iPol p (iCl cl)) ;
|
||||
iCl (PredVP np vp) = iNP np (iVP vp) ;
|
||||
iVP (ComplV2 v2 np) i = iNP np (iV2 v2 i) ;
|
||||
iNP (DetCN det cn) f = iDet det (iCN cn) f ;
|
||||
iCN (ModCN ap cn) i = And (iAP ap i) (iCN cn i) ;
|
||||
iVP (CompAP ap) i = iAP ap i ;
|
||||
iAP (AdAP ada ap) i = iAdA ada (iAP ap) i ;
|
||||
iS (ConjS conj x y) = iConj conj (iS x) (iS y) ;
|
||||
iNP (ConjNP conj x y) f = iConj conj (iNP x f) (iNP y f) ;
|
||||
iVP (UseV v) i = iV v i ;
|
||||
iAP (UseA a) i = iA a i ;
|
||||
iCN (UseN n) i = iN n i ;
|
||||
iDet a_Det d f = Exist (\x -> And (d x) (f x)) ;
|
||||
iDet every_Det d f = All (\x -> If (d x) (f x)) ;
|
||||
iPol Pos t = t ;
|
||||
iPol Neg t = Not t ;
|
||||
iTense Pres t = t ;
|
||||
iTense Perf t = Past t ;
|
||||
iConj and_Conj a b = And a b ;
|
||||
iConj or_Conj a b = Or a b ;
|
||||
}
|
||||
Reference in New Issue
Block a user