Alphabet a b c d e f g h i j k l m n o p q r s t u v w x y z ä á â đ ž š č ŋ %^WG:0 %^RV:0 %^SV:0 %^RC:0 %^RLEN:0 %^LLEN:0 %^SLEN:0 %^CLEN:0 %>:0 ; Sets Vow = a e o u i á â ä y ; Seg = a b c d e f g h i j k l m n o p q r s t u v w x y z ä á â đ ž š č ŋ ; Arch = %^WG %^RV %^SV ; Len = %^RLEN %^LLEN %^SLEN ; Rules "Quantitative weak grade" Cx:0 <=> Cx _ Vow %^WG: ; where Cx in ( b s t k č d ) ; ! k i ^RV s s á ^WG ! k i 0 s 0 á 0 "Qualtitative weak grade" Cx:Cy <=> _ Cz %^RC: Vow %^WG: ; where Cx in ( k h ) Cy in ( v v ) Cz in ( s č ) matched ; ! r á ^RV k s á ^WG ! r á 0 v s á 0 "Root vowel lengthening" %^RV:Vx <=> Vx _ [ ?* - %>: ] %^RLEN: ; except Vx _ [ ?* - %>: ] %^LLEN: ; where Vx in ( i á u ) ; ! pending... ! k i ^RV s s á ^RLEN > n ! k i i s s á 0 0 n "Low root vowel lengthening" %^RV:Vx <=> Vx _ [ ?* - %>: ] %^LLEN: ; except Vx _ [ ?* - %>: ] %^RLEN: ; where Vx in ( á u ) ; ! pending... ! f á ^RV d d á ^LLEN ! f á á d d á 0 !"Consonant lengthening after qualitative weak grade" !%^RC:Cz <=> Cz _ Vow %^WG: %^CLEN: ; ! where Cz in ( s č ) ; "Consonant lengthening after qualitative weak grade" %^RC:Cz <=> Cx: Cz _ Vow %^WG: %^CLEN: ; where Cx in ( k h ) Cz in ( s č ) matched ; "Suffix vowel lengthening" %^SV:Vx <=> Vx _ [ ?* - %>: ] %^SLEN: ; where Vx in ( á ) ; ! pending... ! k i ^RV s s á ^SV ^SLEN > s t ! k i 0 s s á á 0 0 s t "Consonant shortening after root vowel lengthening" Cx:0 <=> %^RV: _ Cx [ Seg* - %>: ] %^RLEN: ; where Cx in ( b s t k č d ) ; ! k i ^RV s s á ^RLEN > n ! k i 0 0 s á 0 0 n "Consonant shortening after low root vowel lengthening" Cx:0 <=> %^RV: _ Cx [ Seg* - %>: ] %^LLEN: ; where Cx in ( b s t k č d ) ;