Skip to content
This repository has been archived by the owner on Mar 25, 2022. It is now read-only.

Commit

Permalink
Work on Marpa theory book
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeffrey Kegler committed Mar 21, 2016
1 parent 25429b1 commit 7782d6d
Showing 1 changed file with 69 additions and 24 deletions.
93 changes: 69 additions & 24 deletions recce.ltx
Original file line number Diff line number Diff line change
Expand Up @@ -991,9 +991,15 @@ For example, we would write
\end{aligned}
\]

In this monograph,
to avoid large numbers of trivial definitions,
we allow a kind of ``inheritance''.
Metonymy, the subsitution of one thing for another with
a related meaning,
is common in language:
for example, ``Hollywood'' is a town in California,
but the word is often used to mean the U.S. entertainment
industry.
Where our use of metonymy is non-obvious or non-intuitive,
we will make it a matter of explicit definition.

For example,
in what follows, we will define Earley items,
which contain dotted rules.
Expand All @@ -1003,20 +1009,13 @@ we will mean to apply that notion to the rule of the dotted rule.
When we apply a dotted rule notion to an Earley item,
we will mean to apply that notion to the dotted rule
of the Earley item.
Inheritance will be transitive, so that when
we apply a rule notion to an Earley item,
Metonymic application of
notions will be transitive so that,
for example,
when we apply a rule notion to an Earley item,
we will mean to apply that notion to the rule
of the dotted rule of the Earley item.

In ordinary language,
definitions are often inherited and
our use of it will usually be natural
and obvious.
In the complex cases,
and indeed in many of the simple ones,
we will be explicit about our use
of inherited definitions.

\section{Undefineds and non-well-defineds}

We will use the symbol \undefined%
Expand Down Expand Up @@ -6118,7 +6117,7 @@ $\var{x} = \var{n}$
\label{eq:iterated-null-scan-op-NEW-52}
& \myparbox{%
$\Postdot{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \big( \RHS{\Rule{\Veim{bas}}} \big)
\hspace*{1em} $= \big( \RHS{\Rule{\Veim{bas}}} \big)
[\Dotix{\Veim{bas}} + \var{n}]$
\newline
\becuz{}
Expand All @@ -6142,7 +6141,7 @@ $\Postdot{\iop{null-scan-op}{\var{n}}{\Veim{bas}}} = \epsilon$
\label{eq:iterated-null-scan-op-NEW-56}
& \myparbox{%
$\Rule{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Rule{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\hspace*{1em} $= \Rule{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-54},
Expand All @@ -6151,7 +6150,7 @@ $\Rule{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-58}
& \myparbox{%
$\Left{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Left{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\hspace*{1em} $= \Left{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-54},
Expand All @@ -6160,7 +6159,7 @@ $\Left{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-60}
& \myparbox{%
$\Right{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Right{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\hspace*{1em} $= \Right{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-54},
Expand All @@ -6169,7 +6168,7 @@ $\Right{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-62}
& \myparbox{%
$\incr{\Dotix{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}$ \newline
\hspace*{3em} $= \Dotix{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\hspace*{1em} $= \Dotix{\op{null-scan-op}{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-54},
Expand All @@ -6178,7 +6177,7 @@ $\incr{\Dotix{\iop{null-scan-op}{\var{n}}{\Veim{bas}}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-64}
& \myparbox{%
$\Rule{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Rule{\op{null-scan-op}{\Veim{bas}}}.$
\hspace*{1em} $= \Rule{\op{null-scan-op}{\Veim{bas}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-46},
Expand All @@ -6187,7 +6186,7 @@ $\Rule{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-66}
& \myparbox{%
$\Left{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Left{\op{null-scan-op}{\Veim{bas}}}.$
\hspace*{1em} $= \Left{\op{null-scan-op}{\Veim{bas}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-48},
Expand All @@ -6196,21 +6195,67 @@ $\Left{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\label{eq:iterated-null-scan-op-NEW-68}
& \myparbox{%
$\Right{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Right{\op{null-scan-op}{\Veim{bas}}}.$
\hspace*{1em} $= \Right{\op{null-scan-op}{\Veim{bas}}}.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-50},
\eqref{eq:iterated-null-scan-op-NEW-60}.
} \\
\label{eq:iterated-null-scan-op-NEW-68}
\label{eq:iterated-null-scan-op-NEW-70}
& \myparbox{%
$\Dotix{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}$ \newline
\hspace*{3em} $= \Dotix{\op{null-scan-op}{\Veim{bas}}} + \var{n} + 1.$
\hspace*{1em} $= \Dotix{\op{null-scan-op}{\Veim{bas}}} + \var{n} + 1.$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-53},
\eqref{eq:iterated-null-scan-op-NEW-62}.
} \\
\label{eq:iterated-null-scan-op-NEW-72}
& \myparbox{%
\Postdot{\Veim{next}}
\newline
\hspace*{1em}
$= (\RHS{\Veim{next}})[\Dotix{\Veim{next}}]$,
\newline
\hspace*{1em}
where
$\Veim{next} = \iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}$
\newline
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-7}.
} \\
\label{eq:iterated-null-scan-op-NEW-74}
& \myparbox{%
\Postdot{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}
\newline
\hspace*{1em} $= (\RHS{
\Rule{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}
})[$
\newline
\hspace*{2em}
$\Dotix{\op{null-scan-op}{\Veim{bas}}} + \var{n} + 1$
\newline
\hspace*{1em}
$]$, \becuz{}
\eqref{eq:iterated-null-scan-op-NEW-70},
\eqref{eq:iterated-null-scan-op-NEW-72},
\dref[Rule notions applied to EIM's]{def:eim-rule-notions}.
} \\
\label{eq:iterated-null-scan-op-NEW-76}
& \myparbox{%
\Postdot{\iop{null-scan-op}{\Vincr{n}}{\Veim{bas}}}
\newline
\hspace*{1em}
$= (\RHS{\Veim{bas}})[
\Dotix{\op{null-scan-op}{\Veim{bas}}} + \var{n} + 1
]$,
\newline
\hspace*{1em}
\becuz{}
\eqref{eq:iterated-null-scan-op-NEW-64},
\eqref{eq:iterated-null-scan-op-NEW-74},
\dref[Rule notions applied to EIM's]{def:eim-rule-notions}.
}
\end{align}

TODO: TOHERE
Expand Down

0 comments on commit 7782d6d

Please sign in to comment.