This grammar covers the non-context-free language of words with n as followed by n bs followed by n cs. It was written by Ralph Debusmann for his dissertation.
usedim id
usedim lp
usedim lex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define id dimension
defdim id {
deftype "id.label" {a b c}
deflabeltype "id.label"
defentrytype {in: valency("id.label")
out: valency("id.label")}
%%
useprinciple "principle.graph" {
dims {D: id}}
useprinciple "principle.tree" {
dims {D: id}}
useprinciple "principle.valency" {
dims {D: id}}
%%
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lp dimension
defdim lp {
deftype "lp.label" {"1" "2" "3" "^"}
deflabeltype "lp.label"
defentrytype {in: valency("lp.label")
out: valency("lp.label")
order: set(tuple("lp.label" "lp.label"))}
%%
useprinciple "principle.graph" {
dims {D: lp}}
useprinciple "principle.tree" {
dims {D: lp}}
useprinciple "principle.valency" {
dims {D: lp}}
useprinciple "principle.order2" {
dims {D: lp}}
%%
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lex dimension
defdim lex {
defentrytype {word: string}
%%
output "output.dags1"
output "output.latexs1"
useoutput "output.dags1"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lexicon
defentry {
dim id {in: {a?}
out: {a? b! c!}}
dim lp {in: {}
out: {"1"* "2"* "3"*}
order: <"^" "1" "2" "3">}
dim lex {word: "a"}}
defentry {
dim id {in: {a?}
out: {a? b! c!}}
dim lp {in: {"1"!}}
dim lex {word: "a"}}
defentry {
dim id {in: {b!}}
dim lp {in: {"2"!}}
dim lex {word: "b"}}
defentry {
dim id {in: {c!}}
dim lp {in: {"3"!}}
dim lex {word: "c"}}