forked from GitHub/gf-core
prefix verbs in Dutch
This commit is contained in:
@@ -75,7 +75,7 @@ concrete CatDut of Cat =
|
|||||||
--
|
--
|
||||||
---- Open lexical classes, e.g. Lexicon
|
---- Open lexical classes, e.g. Lexicon
|
||||||
--
|
--
|
||||||
V, VS, VQ, VA = ResDut.Verb ** {aux : VAux} ; -- = {s : VForm => Str} ;
|
V, VS, VQ, VA = ResDut.VVerb ;
|
||||||
VV = VVerb ** {isAux : Bool} ;
|
VV = VVerb ** {isAux : Bool} ;
|
||||||
V2, V2A, V2S, V2Q = VVerb ** {c2 : Preposition} ;
|
V2, V2A, V2S, V2Q = VVerb ** {c2 : Preposition} ;
|
||||||
-- V2V = Verb ** {c2 : Preposition ; isAux : Bool} ;
|
-- V2V = Verb ** {c2 : Preposition ; isAux : Bool} ;
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ lin
|
|||||||
-- brother_N2 = mkN2 (mkN "Bruder" "Brüder" masculine) von_Prep ;
|
-- brother_N2 = mkN2 (mkN "Bruder" "Brüder" masculine) von_Prep ;
|
||||||
brown_A = mkA "bruin" ;
|
brown_A = mkA "bruin" ;
|
||||||
-- butter_N = mkN "Butter" "Butter" feminine ; ---- infl
|
-- butter_N = mkN "Butter" "Butter" feminine ; ---- infl
|
||||||
-- buy_V2 = mkV2 (mkV "kopen") ;
|
buy_V2 = mkV2 (mkV "kopen" "kocht" "gekocht") ;
|
||||||
-- camera_N = mkN "Kamera" "Kameras" feminine ;
|
-- camera_N = mkN "Kamera" "Kameras" feminine ;
|
||||||
-- cap_N = mkN "Mütze" ;
|
-- cap_N = mkN "Mütze" ;
|
||||||
-- car_N = mkN "Wagen" ;
|
-- car_N = mkN "Wagen" ;
|
||||||
|
|||||||
@@ -106,11 +106,11 @@ concrete NounDut of Noun = CatDut ** open ResDut, Prelude in {
|
|||||||
a = Strong
|
a = Strong
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- MassNP cn = {
|
MassNP cn = {
|
||||||
-- s = \\c => cn.s ! adjfCase Strong c ! Sg ! c ;
|
s = \\c => cn.s ! Strong ! NF Sg Nom ;
|
||||||
-- a = agrP3 Sg ;
|
a = agrP3 Sg ;
|
||||||
-- isPron = False
|
isPron = False
|
||||||
-- } ;
|
} ;
|
||||||
|
|
||||||
UseN, UseN2 = \n -> {
|
UseN, UseN2 = \n -> {
|
||||||
s = \\_ => n.s ;
|
s = \\_ => n.s ;
|
||||||
|
|||||||
@@ -37,11 +37,14 @@ oper
|
|||||||
neuter : Gender ;
|
neuter : Gender ;
|
||||||
utrum : Gender ;
|
utrum : Gender ;
|
||||||
|
|
||||||
|
de,het : Gender ;
|
||||||
|
|
||||||
masculine = Utr ;
|
masculine = Utr ;
|
||||||
feminine = Utr ;
|
feminine = Utr ;
|
||||||
neuter = Neutr ;
|
het,neuter = Neutr ;
|
||||||
utrum = Utr ;
|
de,utrum = Utr ;
|
||||||
|
|
||||||
|
|
||||||
--2 Nouns
|
--2 Nouns
|
||||||
|
|
||||||
mkN : overload {
|
mkN : overload {
|
||||||
@@ -137,24 +140,29 @@ oper
|
|||||||
|
|
||||||
mkV : overload {
|
mkV : overload {
|
||||||
mkV : (aaien : Str) -> V ;
|
mkV : (aaien : Str) -> V ;
|
||||||
|
mkV : (breken,brak,gebroken : Str) -> V ;
|
||||||
|
mkV : (breken,brak,braken,gebroken : Str) -> V ;
|
||||||
mkV : (aai,aait,aaien,aaide,aaide,aaiden,geaaid : Str) -> V ;
|
mkV : (aai,aait,aaien,aaide,aaide,aaiden,geaaid : Str) -> V ;
|
||||||
|
|
||||||
---- To add a movable suffix e.g. "auf(fassen)".
|
-- To add a movable suffix e.g. "auf(fassen)".
|
||||||
--
|
|
||||||
-- mkV : Str -> V -> V
|
mkV : Str -> V -> V
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkV = overload {
|
mkV = overload {
|
||||||
mkV : (aaien : Str) -> V =
|
mkV : (aaien : Str) -> V =
|
||||||
\s -> lin V (regVerb s ** {aux = VHebben}) ;
|
\s -> lin V (v2vv (regVerb s)) ;
|
||||||
mkV : (breken,brak,gebroken : Str) -> V =
|
mkV : (breken,brak,gebroken : Str) -> V =
|
||||||
\a,b,c -> lin V (irregVerb a b c ** {aux = VHebben}) ;
|
\a,b,c -> lin V (v2vv (irregVerb a b c)) ;
|
||||||
|
mkV : (breken,brak,braken,gebroken : Str) -> V =
|
||||||
|
\a,b,c,d -> lin V (v2vv (irregVerb2 a b c d)) ;
|
||||||
mkV : (aai,aait,aaien,aaide,aaiden,geaaid : Str) -> V =
|
mkV : (aai,aait,aaien,aaide,aaiden,geaaid : Str) -> V =
|
||||||
\a,b,c,d,f,g -> lin V (mkVerb a b c d d f g ** {aux = VHebben}) ;
|
\a,b,c,d,f,g -> lin V (v2vv (mkVerb a b c d d f g)) ;
|
||||||
|
mkV : Str -> V -> V = \v,s ->lin V (prefixV v s) ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
zijnV : V -> V ;
|
zijnV : V -> V ;
|
||||||
zijnV v = lin V {s = v.s ; aux = VZijn} ;
|
zijnV v = lin V (v2vvAux v VZijn) ;
|
||||||
|
|
||||||
---- Reflexive verbs can take reflexive pronouns of different cases.
|
---- Reflexive verbs can take reflexive pronouns of different cases.
|
||||||
--
|
--
|
||||||
@@ -170,7 +178,7 @@ oper
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkV2 = overload {
|
mkV2 = overload {
|
||||||
mkV2 : Str -> V2 = \s -> lin V2 (regVerb s ** {aux = VHebben ; c2 = []}) ;
|
mkV2 : Str -> V2 = \s -> lin V2 (v2vv (regVerb s) ** {c2 = []}) ;
|
||||||
mkV2 : V -> V2 = \s -> lin V2 (s ** {c2 = []}) ;
|
mkV2 : V -> V2 = \s -> lin V2 (s ** {c2 = []}) ;
|
||||||
mkV2 : V -> Prep -> V2 = \s,p -> lin V2 (s ** {c2 = p.s}) ;
|
mkV2 : V -> Prep -> V2 = \s,p -> lin V2 (s ** {c2 = p.s}) ;
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -124,6 +124,28 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
in
|
in
|
||||||
mkVerb (brek ! VPresSg1) (brek ! VPresSg3) (brek ! VInf) brak brak (brak + "en") gebroken ;
|
mkVerb (brek ! VPresSg1) (brek ! VPresSg3) (brek ! VInf) brak brak (brak + "en") gebroken ;
|
||||||
|
|
||||||
|
irregVerb2 : (breken,brak,braken,gebroken : Str) -> Verb = \breken,brak,braken,gebroken ->
|
||||||
|
let brek = (regVerb breken).s
|
||||||
|
in
|
||||||
|
mkVerb (brek ! VPresSg1) (brek ! VPresSg3) (brek ! VInf) brak brak (braken) gebroken ;
|
||||||
|
|
||||||
|
-- To add a prefix (like "ein") to an already existing verb.
|
||||||
|
|
||||||
|
prefixV : Str -> VVerb -> VVerb = \ein,verb ->
|
||||||
|
let
|
||||||
|
vs = verb.s ;
|
||||||
|
einb : Bool -> Str -> Str = \b,geb ->
|
||||||
|
if_then_Str b (ein + geb) geb ;
|
||||||
|
in
|
||||||
|
{s = table {
|
||||||
|
f@(VInf | VPerf) => ein + vs ! f ; ---- TODO: eingegeven
|
||||||
|
f => vs ! f
|
||||||
|
} ;
|
||||||
|
prefix = ein ;
|
||||||
|
aux = verb.aux ;
|
||||||
|
vtype = verb.vtype
|
||||||
|
} ;
|
||||||
|
|
||||||
-- Pattern matching verbs
|
-- Pattern matching verbs
|
||||||
smartVerb : (_,_:Str) -> Verb = \verb,stem ->
|
smartVerb : (_,_:Str) -> Verb = \verb,stem ->
|
||||||
let raw = Predef.tk 2 verb;
|
let raw = Predef.tk 2 verb;
|
||||||
@@ -235,9 +257,7 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
let hoef = mkStem hoeven
|
let hoef = mkStem hoeven
|
||||||
in
|
in
|
||||||
mkVerb hoef (hoef +"t") hoeven (hoef+"de") (hoef+"de") (hoef+"den")
|
mkVerb hoef (hoef +"t") hoeven (hoef+"de") (hoef+"de") (hoef+"den")
|
||||||
("ge"+hoef+"d");
|
("ge"+hoef+"d");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
zijn_V : VVerb = {
|
zijn_V : VVerb = {
|
||||||
s = table {
|
s = table {
|
||||||
@@ -252,7 +272,9 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
VImpPl => "wezen" ;
|
VImpPl => "wezen" ;
|
||||||
VPerf => "geweest"
|
VPerf => "geweest"
|
||||||
} ;
|
} ;
|
||||||
aux = VZijn
|
aux = VZijn ;
|
||||||
|
prefix = [] ;
|
||||||
|
vtype = VAct ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
hebben_V : VVerb = {
|
hebben_V : VVerb = {
|
||||||
@@ -268,7 +290,9 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
VImpPl => "hebben" ;
|
VImpPl => "hebben" ;
|
||||||
VPerf => "gehad"
|
VPerf => "gehad"
|
||||||
} ;
|
} ;
|
||||||
aux = VHebben
|
aux = VHebben ;
|
||||||
|
prefix = [] ;
|
||||||
|
vtype = VAct ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
zullen_V : VVerb = {
|
zullen_V : VVerb = {
|
||||||
@@ -284,7 +308,9 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
VImpPl => "zouden" ; ----
|
VImpPl => "zouden" ; ----
|
||||||
VPerf => "gezoudt"
|
VPerf => "gezoudt"
|
||||||
} ;
|
} ;
|
||||||
aux = VHebben
|
aux = VHebben ;
|
||||||
|
prefix = [] ;
|
||||||
|
vtype = VAct ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
Pronoun : Type = {
|
Pronoun : Type = {
|
||||||
@@ -304,63 +330,24 @@ resource ResDut = ParamX ** open Prelude in {
|
|||||||
het_Pron : Pronoun = mkPronoun "'t" "'t" "ze" "hij" "hem" "zijn" "zijne" Neutr Sg P3 ;
|
het_Pron : Pronoun = mkPronoun "'t" "'t" "ze" "hij" "hem" "zijn" "zijne" Neutr Sg P3 ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Complex $CN$s, like adjectives, have strong and weak forms.
|
-- Complex $CN$s, like adjectives, have strong and weak forms.
|
||||||
|
|
||||||
param
|
param
|
||||||
Adjf = Strong | Weak ;
|
Adjf = Strong | Weak ;
|
||||||
|
|
||||||
---- Gender distinctions are only made in the singular.
|
|
||||||
--
|
|
||||||
-- GenNum = GSg Gender | GPl ;
|
|
||||||
--
|
|
||||||
---- Agreement of $NP$ is a record.
|
|
||||||
--
|
|
||||||
oper Agr = {g : Gender ; n : Number ; p : Person} ;
|
|
||||||
--
|
|
||||||
---- Pronouns are the worst-case noun phrases, which have both case
|
|
||||||
---- and possessive forms.
|
|
||||||
--
|
|
||||||
-- param NPForm = NPCase Case | NPPoss GenNum Case ;
|
|
||||||
--
|
|
||||||
---- Predeterminers sometimes require a case ("ausser mir"), sometimes not ("nur ich").
|
|
||||||
--
|
|
||||||
-- param PredetCase = NoCase | PredCase Case ;
|
|
||||||
--
|
|
||||||
----2 For $Adjective$
|
|
||||||
--
|
|
||||||
---- The predicative form of adjectives is not inflected further.
|
|
||||||
--
|
|
||||||
-- param AForm = APred | AMod GenNum Case ;
|
|
||||||
--
|
|
||||||
--
|
|
||||||
----2 For $Verb$
|
|
||||||
--
|
|
||||||
-- param VForm =
|
|
||||||
-- VInf Bool -- True = with the particle "zu"
|
|
||||||
-- | VFin Bool VFormFin -- True = prefix glued to verb
|
|
||||||
-- | VImper Number -- prefix never glued
|
|
||||||
-- | VPresPart AForm -- prefix always glued
|
|
||||||
-- | VPastPart AForm ;
|
|
||||||
--
|
|
||||||
-- param VFormFin =
|
|
||||||
-- VPresInd Number Person
|
|
||||||
-- | VPresSubj Number Person
|
|
||||||
-- | VImpfInd Number Person --# notpresent
|
|
||||||
-- | VImpfSubj Number Person --# notpresent
|
|
||||||
-- ;
|
|
||||||
--
|
|
||||||
-- param VPForm =
|
|
||||||
-- VPFinite Mood Tense Anteriority
|
|
||||||
-- | VPImperat Bool
|
|
||||||
-- | VPInfinit Anteriority ;
|
|
||||||
|
|
||||||
oper VVerb = Verb ** {aux : VAux} ;
|
oper VVerb = Verb ** {prefix : Str ; aux : VAux ; vtype : VType} ;
|
||||||
param VAux = VHebben | VZijn ;
|
param VAux = VHebben | VZijn ;
|
||||||
|
|
||||||
-- param VType = VAct | VRefl Case ;
|
param VType = VAct | VRefl ;
|
||||||
--
|
|
||||||
|
oper
|
||||||
|
v2vvAux : Verb -> VAux -> VVerb = \v,a ->
|
||||||
|
{s = v.s ; aux = a ; prefix = [] ; vtype = VAct} ;
|
||||||
|
v2vv : Verb -> VVerb = \v -> v2vvAux v VHebben ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
---- The order of sentence is depends on whether it is used as a main
|
---- The order of sentence is depends on whether it is used as a main
|
||||||
---- clause, inverted, or subordinate.
|
---- clause, inverted, or subordinate.
|
||||||
|
|
||||||
@@ -401,27 +388,15 @@ param
|
|||||||
-- DForm = DUnit | DTeen | DTen ;
|
-- DForm = DUnit | DTeen | DTen ;
|
||||||
--
|
--
|
||||||
----2 Transformations between parameter types
|
----2 Transformations between parameter types
|
||||||
--
|
|
||||||
|
oper Agr : Type = {g : Gender ; n : Number ; p : Person} ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
agrP3 : Number -> Agr = agrgP3 Neutr ;
|
agrP3 : Number -> Agr = agrgP3 Neutr ;
|
||||||
|
|
||||||
agrgP3 : Gender -> Number -> Agr = \g,n ->
|
agrgP3 : Gender -> Number -> Agr = \g,n ->
|
||||||
{g = g ; n = n ; p = P3} ;
|
{g = g ; n = n ; p = P3} ;
|
||||||
|
|
||||||
-- gennum : Gender -> Number -> GenNum = \g,n ->
|
|
||||||
-- case n of {
|
|
||||||
-- Sg => GSg g ;
|
|
||||||
-- Pl => GPl
|
|
||||||
-- } ;
|
|
||||||
--
|
|
||||||
---- Needed in $RelativeDut$.
|
|
||||||
--
|
|
||||||
-- numGenNum : GenNum -> Number = \gn ->
|
|
||||||
-- case gn of {
|
|
||||||
-- GSg _ => Sg ;
|
|
||||||
-- GPl => Pl
|
|
||||||
-- } ;
|
|
||||||
|
|
||||||
-- Used in $NounDut$.
|
-- Used in $NounDut$.
|
||||||
|
|
||||||
agrAdj : Gender -> Adjf -> NForm -> AForm = \g,a,n ->
|
agrAdj : Gender -> Adjf -> NForm -> AForm = \g,a,n ->
|
||||||
@@ -430,59 +405,7 @@ param
|
|||||||
_ => AAttr
|
_ => AAttr
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
---- To add a prefix (like "ein") to an already existing verb.
|
|
||||||
--
|
|
||||||
-- prefixV : Str -> Verb -> Verb = \ein,verb ->
|
|
||||||
-- let
|
|
||||||
-- vs = verb.s ;
|
|
||||||
-- geben = vs ! VInf False ;
|
|
||||||
-- einb : Bool -> Str -> Str = \b,geb ->
|
|
||||||
-- if_then_Str b (ein + geb) geb ;
|
|
||||||
-- in
|
|
||||||
-- {s = table {
|
|
||||||
-- VInf False => ein + geben ;
|
|
||||||
-- VInf True =>
|
|
||||||
-- if_then_Str (isNil ein) ("zu" ++ geben) (ein + "zu" + geben) ;
|
|
||||||
-- VFin b vf => einb b (vs ! VFin b vf) ;
|
|
||||||
-- VImper n => vs ! VImper n ;
|
|
||||||
-- VPresPart a => ein + (regA (geben + "d")).s ! Posit ! a ;
|
|
||||||
-- VPastPart a => ein + vs ! VPastPart a
|
|
||||||
-- } ;
|
|
||||||
-- prefix = ein ;
|
|
||||||
-- aux = verb.aux ;
|
|
||||||
-- vtype = verb.vtype
|
|
||||||
-- } ;
|
|
||||||
--
|
|
||||||
--
|
|
||||||
--
|
|
||||||
---- Pronouns and articles
|
|
||||||
---- Here we define personal and relative pronouns.
|
|
||||||
---- All personal pronouns, except "ihr", conform to the simple
|
|
||||||
---- pattern $mkPronPers$.
|
|
||||||
--
|
|
||||||
-- mkPronPers : (x1,_,_,_,x5 : Str) -> Gender -> Number -> Person ->
|
|
||||||
-- {s : NPForm => Str ; a : Agr} =
|
|
||||||
-- \ich,mich,mir,meiner,mein,g,n,p -> {
|
|
||||||
-- s = table {
|
|
||||||
-- NPCase c => caselist ich mich mir meiner ! c ;
|
|
||||||
-- NPPoss gn c => mein + pronEnding ! gn ! c
|
|
||||||
-- } ;
|
|
||||||
-- a = {g = g ; n = n ; p = p}
|
|
||||||
-- } ;
|
|
||||||
--
|
|
||||||
-- pronEnding : GenNum => Case => Str = table {
|
|
||||||
-- GSg Masc => caselist "" "en" "em" "es" ;
|
|
||||||
-- GSg Fem => caselist "e" "e" "er" "er" ;
|
|
||||||
-- GSg Neut => caselist "" "" "em" "es" ;
|
|
||||||
-- GPl => caselist "e" "e" "en" "er"
|
|
||||||
-- } ;
|
|
||||||
--
|
|
||||||
-- artDef : GenNum => Case => Str = table {
|
|
||||||
-- GSg Masc => caselist "der" "den" "dem" "des" ;
|
|
||||||
-- GSg Fem => caselist "die" "die" "der" "der" ;
|
|
||||||
-- GSg Neut => caselist "das" "das" "dem" "des" ;
|
|
||||||
-- GPl => caselist "die" "die" "den" "der"
|
|
||||||
-- } ;
|
|
||||||
--
|
--
|
||||||
---- This is used when forming determiners that are like adjectives.
|
---- This is used when forming determiners that are like adjectives.
|
||||||
--
|
--
|
||||||
@@ -629,7 +552,7 @@ param
|
|||||||
fin = verb.p1 ;
|
fin = verb.p1 ;
|
||||||
neg = vp.a1 ! b ;
|
neg = vp.a1 ! b ;
|
||||||
obj = vp.n2 ! agr ;
|
obj = vp.n2 ! agr ;
|
||||||
compl = obj ++ neg ++ vp.a2 ;
|
compl = obj ++ neg ++ vp.a2 ++ vp.s.prefix ;
|
||||||
inf = vp.inf ++ verb.p2 ;
|
inf = vp.inf ++ verb.p2 ;
|
||||||
extra = vp.ext ;
|
extra = vp.ext ;
|
||||||
inffin =
|
inffin =
|
||||||
|
|||||||
@@ -56,13 +56,9 @@ concrete StructuralDut of Structural = CatDut, Prelude **
|
|||||||
-- more_CAdv = X.mkCAdv "mehr" "als" ;
|
-- more_CAdv = X.mkCAdv "mehr" "als" ;
|
||||||
-- most_Predet = {s = appAdj (regA "meist") ; c = NoCase} ;
|
-- most_Predet = {s = appAdj (regA "meist") ; c = NoCase} ;
|
||||||
-- much_Det = detLikeAdj Sg "viel" ;
|
-- much_Det = detLikeAdj Sg "viel" ;
|
||||||
-- must_VV = auxVV
|
|
||||||
-- (mkV
|
must_VV = auxVV (mkV "moeten" "moest" "gemoete") ;
|
||||||
-- "müssen" "muß" "mußt" "muß" "müßt" "müß"
|
|
||||||
-- "mußte" "mußtest" "mußten" "mußtet"
|
|
||||||
-- "müßte" "gemußt" []
|
|
||||||
-- VHaben) ;
|
|
||||||
----- one_Quant = DEPREC
|
|
||||||
-- only_Predet = {s = \\_,_,_ => "nur" ; c = NoCase} ;
|
-- only_Predet = {s = \\_,_,_ => "nur" ; c = NoCase} ;
|
||||||
-- no_Utt = ss "nein" ;
|
-- no_Utt = ss "nein" ;
|
||||||
-----b no_Phr = ss "nein" ;
|
-----b no_Phr = ss "nein" ;
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ concrete VerbDut of Verb = CatDut ** open Prelude, ResDut in {
|
|||||||
insertExtrapos vpi.p3 (
|
insertExtrapos vpi.p3 (
|
||||||
insertInf vpi.p2 (
|
insertInf vpi.p2 (
|
||||||
insertObj vpi.p1 (
|
insertObj vpi.p1 (
|
||||||
predVGen v.isAux {s = v.s ; aux = v.aux}))) ; ---- subtyp
|
predVGen v.isAux {s = v.s ; aux = v.aux ; prefix = v.prefix ; vtype = v.vtype}))) ; ---- subtyp
|
||||||
|
|
||||||
-- ComplVS v s =
|
-- ComplVS v s =
|
||||||
-- insertExtrapos (conjThat ++ s.s ! Sub) (predV v) ;
|
-- insertExtrapos (conjThat ++ s.s ! Sub) (predV v) ;
|
||||||
@@ -20,7 +20,7 @@ concrete VerbDut of Verb = CatDut ** open Prelude, ResDut in {
|
|||||||
-- insertExtrapos (q.s ! QIndir) (predV v) ;
|
-- insertExtrapos (q.s ! QIndir) (predV v) ;
|
||||||
-- ComplVA v ap = insertObj (\\ _ => ap.s ! APred) (predV v) ;
|
-- ComplVA v ap = insertObj (\\ _ => ap.s ! APred) (predV v) ;
|
||||||
--
|
--
|
||||||
SlashV2a v = predV {s = v.s ; aux = v.aux} ** {c2 = v.c2} ;
|
SlashV2a v = predV {s = v.s ; aux = v.aux ; prefix = v.prefix ; vtype = v.vtype} ** {c2 = v.c2} ;
|
||||||
--
|
--
|
||||||
-- Slash2V3 v np =
|
-- Slash2V3 v np =
|
||||||
-- insertObj (\\_ => appPrep v.c2 np.s) (predV v) ** {c2 = v.c3} ;
|
-- insertObj (\\_ => appPrep v.c2 np.s) (predV v) ** {c2 = v.c3} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user