cg3
cg3 copied to clipboard
ADDCOHORT hangs
this was discussed in irc before christmas by @lynnda-hill:
$ cd github/giellalt/lang-smj && make
$ echo Dan maŋŋela la Sámedigge giellastivrra ja fylkka bálkáv vaddám. | hfst-tokenise -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/tokeniser-gramcheck-gt-desc.pmhfst' | divvun-blanktag '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/analyser-gt-whitespace.hfst' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/../../src/cg3/valency.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/../../tools/tokenisers/mwe-dis.cg3' | cg-mwesplit | divvun-cgspell -n 10 -b 15.000000 -w 5000.000000 -u 0.400000 -l '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/acceptor.default.hfst' -m '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/errmodel.default.hfst' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/valency-postspell.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/./grc-disambiguator.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/./spellchecker.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/after-speller-disambiguator.cg3'
"<Dan>"
"dat" Pron <smj> <smj> Dem Sg Gen <W:0.0> SELECT:2630:GenPo SUBSTITUTE:4194 SUBSTITUTE:4188
; "Da" N Prop Sem/Org Ess <W:0.0> SELECT:2630:GenPo
; "Da" N Prop Sem/Org Sg Ine <W:0.0> SELECT:2630:GenPo
; "Dan" N Prop Sem/Mal Attr <W:0.0> REMOVE:1816
; "Dan" N Prop Sem/Mal Sg Nom <W:0.0> REMOVE:1816
; "dat" Pron Dem Sg Err/Infl Ela Attr <W:0.0> SELECT:2630:GenPo
; "dat" Pron Dem Sg Gen Attr <W:0.0> SELECT:2630:GenPo REMOVE:2168
; "dat" Pron Dem Sg Ill Attr <W:0.0> SELECT:2630:GenPo
; "dat" Pron Dem Sg Ine Attr <W:0.0> SELECT:2630:GenPo
:
"<maŋŋela>"
"maŋŋela" Po <smj> <smj> <W:0.0> SELECT:2842 SUBSTITUTE:4192 SUBSTITUTE:4186
; "maŋŋel" N Sem/Dummytag Sg Gen <W:0.0> SELECT:2842
; "maŋŋela" Adv <W:0.0> SELECT:2842
; "maŋŋela" Pr <W:0.0> SELECT:2842
:
"<la>"
"liehket" V <smj> <smj> IV Ind Prs Sg2 <W:0.0> MAP:3350 SUBSTITUTE:4189 @+FAUXV SUBSTITUTE:4183
"liehket" V <smj> <smj> IV Ind Prs Sg3 <W:0.0> MAP:3350 SUBSTITUTE:4189 @+FAUXV SUBSTITUTE:4183
; "liehket" V IV Ind Prs ConNeg <W:0.0> REMOVE:3098
:
"<Sámedigge>"
"Sámedigge" N <smj> <smj> Prop Sem/Org Sg Nom <W:0.0> SELECT:3258 SUBSTITUTE:4187 SUBSTITUTE:4181
; "sámedigge" N Sem/Build_Org Sg Nom <W:0.0> SELECT:3258
; "digge" N Sem/Org Sg Nom <W:0.0>
; "sábme" N Sem/Hum_Lang Cmp/SgGen Cmp <W:0.0> REMOVE:2110:longest-match
; "digge" N Sem/Org Sg Nom <W:0.0>
; "sáme" A Cmp/Attr Cmp <W:0.0> REMOVE:2110:longest-match
; "digge" N Sem/Org Sg Nom <W:0.0>
; "sáme" N Sem/Dummytag Cmp/Unass Cmp <W:0.0> REMOVE:2110:longest-match
:
"<giellastivrra>"
"stivrra" N <smj> <smj> Sem/Org Sg Nom <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4181
"giella" N Sem/Lang_Tool-catch Cmp/SgNom Cmp <W:0.0>
:
"<ja>"
"ja" CC <smj> <smj> <W:0.0> MAP:2012 SELECT:2068 SUBSTITUTE:4195 @CNP SUBSTITUTE:4189
; "ja" CC <W:0.0> @CVP MAP:2012 SELECT:2068
:
"<fylkka>"
"fylkka" v1 N <smj> <smj> Sem/Org Sg Nom <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4181
:
"<bálkáv>"
"bálkká" N <smj> <smj> Sem/Money Sg Acc <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4181
:
"<vaddám>"
"vaddet" V <smj> <smj> <RE-Ill-Ani><TH-Acc-*Ani> <RE-Ill-Ani> TV PrfPrc <W:0.0> SUBSTITUTE:1054 SUBSTITUTE:1061 MAP:3381 SELECT:4072 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4183
; "vadde" N Sem/Hum Gram/NomAg Sg Acc PxSg1 <W:0.0> REMOVE:3980
; "vadde" N Sem/Hum Gram/NomAg Sg Gen PxSg1 <W:0.0> REMOVE:3538
; "vadde" N Sem/Hum Gram/NomAg Sg Nom PxSg1 <W:0.0> SELECT:4072
"<.>"
"." CLB <W:0.0>
:\n
$ echo Dan maŋŋela la Sámedigge giellastivrra ja fylkka bálkáv vaddám. | hfst-tokenise -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/tokeniser-gramcheck-gt-desc.pmhfst' | divvun-blanktag '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/analyser-gt-whitespace.hfst' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/../../src/cg3/valency.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/../../tools/tokenisers/mwe-dis.cg3' | cg-mwesplit | divvun-cgspell -n 10 -b 15.000000 -w 5000.000000 -u 0.400000 -l '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/acceptor.default.hfst' -m '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/errmodel.default.hfst' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/valency-postspell.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/./grc-disambiguator.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/./spellchecker.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/after-speller-disambiguator.cg3' | vislcg3 --trace -g '/home/flammie/github/giellalt/lang-smj/tools/grammarcheckers/./grammarchecker.cg3'
[hangs up]
The offending rule is commented out in git:
diff --git a/tools/grammarcheckers/grammarchecker.cg3 b/tools/grammarcheckers/grammarchecker.cg3
index 7c3cc6f01..8c4f51e6d 100644
--- a/tools/grammarcheckers/grammarchecker.cg3
+++ b/tools/grammarcheckers/grammarchecker.cg3
@@ -2158,7 +2158,7 @@ COPY:syn-nom_nom-gen_nom (Gen &SUGGEST) EXCEPT (Nom &syn-nom_nom-gen_nom) TARGET
ADD:xsyn-nom-nom-comma (&syn-nom-nom-comma) TARGET (Gram/3syll Actio Nom) OR (N Sg Nom) IF (1 (N Sg Nom) OR (Actio Nom))(2 (CC) LINK 1 (Nom)) (NEGATE 0 (Gen)) (NEGATE 1 (V Ind) OR Adv OR Po) (NEGATE 0 EVEN-VERBS + Der/NomAct) (NEGATE 1 (Gram/TAbbr)) (NEGATE 0 (A Sg Nom)) (NEGATE 1 ("jurra") LINK *1 (V Ind) BARRIER NOT-CC - Adv) (NEGATE -1 (N Sg Nom) LINK 1 (Actio Nom)) (NEGATE 1 (Prop Sg Nom)) ;
-#ADDCOHORT ("<,>" "," CLB &ADDED &syn-nom-nom-comma) AFTER &syn-nom-nom-comma;
+ADDCOHORT ("<,>" "," CLB &ADDED &syn-nom-nom-comma) AFTER &syn-nom-nom-comma;
ADDRELATION (RIGHT) (&syn-nom-nom-comma) TO (1 (&ADDED)) ;
## Dan maŋŋela la Sámedigge giellastivrra ja fylkka bálkáv vaddám.
the pipeline used is tools/grammarcheckers/modes/trace-gramchecker-dev.mode
which can be regenerated with make dev
in the grammarchers directory.