! Mari twol file Alphabet ! Letters of the alphabet a b v g d e Z z i j k l m n N o O p r s t u y f x c C S 9 Y 8 E U A ! other symbols %- !0 ! Archiphonemes for vowels e1:e a1:a i1:i u1:u y1:y ! Boundary symbols ! old ! + / { _ $ } @ ~ & # ! new X1 X2 X3 X4 X5 X6 X7 X8 X9 Z1 Z2 X1:0 X2:0 X3:0 X4:0 X5:0 X6:0 X7:0 X8:0 X9:0 Z1:0 Z2:0 ; Sets !V = a e i o O u y Y ; V = a e i o O u y Y e1 a1 i1 u1 y1 ; ! same as small V set? Vo = o u ; VO = O y ; Ve = a e i ; Cons = b v g d Z z k l m n N p r s t f x c C S ; Cst = k p t f x c C S s ; all = a b v g d e Z z i j k l m n N o O p r s t u y f x c C S 9 Y 8 E U A %- ; ! O ; V1 = e1 a1 i1 u1 y1 ; Dummy = X2 X3 X4 X5 X6 X7 X8 X9 Z1 Z2 ; alllw = a b v g d e Z z i j k l m n N o O p r s t u y f x c C S 9 Y 8 E U A e1 a1 i1 u1 y1 X1 X2 X3 X4 X5 X6 X7 X8 X9 Z1 %- Z2 ; Definitions !Defaults = [X2:0 | X3:0 | X4:0 | Z2:0 | X6:0 | X7:0 | X8:0 | X9:0 | Z1:0 | X1:0] ; CorVs = [all:V | all:Cons]* ; CorYs = [all:Y | all:Cons | X1:0]* ; !C/V* = ([=:V | =:Cons])* ; !C/Y* = ([=:Y | =:Cons | X1:0])* ; Rules "s-1a" X:0 /<= X:0 (all:alllw)* _ ; where X in (X2 X3 X4 X5) ; "s-1b" X:0 /<= X:0 (all:alllw)* _ ; where X in (X6 X7 X8) ; "s-1c" X:0 /<= X:0 (all:alllw)* _ ; where X in (X9 Z1 Z2) ; "s-2" X4:0 /<= X3:0 (all:alllw)* _ ; "s-3" X4:0 /<= X:0 (all:alllw)* _ ; where X in (X7 X6) ; "s-4" X3:0 /<= X:0 (all:alllw)* _ ; where X in (X7 X8) ; "s-5" X9:0 <=> X8:0 [S:S | m:m] Y:Y (X5:0 CorVs) _ ; "s-6" X:Y <=> _ (X1:0) Dummy:0 all:Cons ; where X in V1 ; "s-7a" e1:o <=> all:Vo CorYs (all:8) _ [(X1:0) Z2:0 | %-:%-] ; "s-7b" e1:O <=> all:VO CorYs (all:8) _ [(X1:0) Z2:0 | %-:%-] ; "s-7c" e1:e <= all:Ve CorYs (all:8) _ [(X1:0) Z2:0 | %-:%-] ; "s-8abcd" [a1:a | i1:i | u1:u | y1:y] <=> _ [Z2:0 | %-:%-] ; "s-9" x:0 <=> _ Dummy:0 all:V ; where x in V1 ; "s-10" X1:Y <=> all:Cons _ Dummy:0 all:Cons [Z2:0 | all:Cons] ; "s-11" X:0 <=> _ Dummy:0 X:alllw ; where X in (a e) ; "s-12" [z:s | Z:S] <=> [all:Cst | all:V all:d] (X1:0) Dummy:0 _ ; "s-13" 8:0 <=> _ X2:0 e1:e ;