- Wirth-Weber precedence relationship
The Wirth-Weber relationship between a pair of symbols is necessary to determine if a
formal grammar is aSimple precedence grammar , and in such case theSimple precedence parser can be used.The goal is to identify the when the viable prefixes have the pivot and must be reduced. A means that the pivot is found, a means that a potential pivot is starting, and a means that we are still in the same pivot.
__TOC__
=Formal definition=
*
*
*
=Precedence Relations Computing Algorithm=
We will define three Sets for a symbol:
*
*
* "Note that Head*(X) is X if X is a terminal, and if X is a non-terminal, Head*(X) is the set with only the terminals belonging to Head+(X). This set is equivalent to First-set or Fi(X) described inLL parser "The pseudocode for computing relations is:* RelationTable :=
* For each production
** For each two adjacent symbols X Y in α
*** add(RelationTable,)
*** add(RelationTable,)
*** add(RelationTable,)
* add(RelationTable,) where S is the initial non terminal of the grammar, and $ is a limit marker
* add(RelationTable,) where S is the initial non terminal of the grammar, and $ is a limit marker"Note that and are used with sets instead of elements as they were defined, in this case you must add all the
cartesian product between the sets/elements"=Examples=
precedence table:
Wikimedia Foundation. 2010.