Top-down Parsing - Time and Space Complexity of Top-down Parsing

Time and Space Complexity of Top-down Parsing

When top-down parser tries to parse an ambiguous input with respect to an ambiguous CFG, it may need exponential number of steps (with respect to the length of the input) to try all alternatives of the CFG in order to produce all possible parse trees, which eventually would require exponential memory space. The problem of exponential time complexity in top-down parsers constructed as sets of mutually recursive functions has been solved by Norvig in 1991. His technique is similar to the use of dynamic programming and state-sets in Earley's algorithm (1970), and tables in the CYK algorithm of Cocke, Younger and Kasami.

The key idea is to store results of applying a parser p at position j in a memotable and to reuse results whenever the same situation arises. Frost, Hafiz and Callaghan also use memoization for refraining redundant computations to accommodate any form of CFG in polynomial time (Θ(n4) for left-recursive grammars and Θ(n3) for non left-recursive grammars). Their top-down parsing algorithm also requires polynomial space for potentially exponential ambiguous parse trees by 'compact representation' and 'local ambiguities grouping'. Their compact representation is comparable with Tomita’s compact representation of bottom-up parsing.

Using PEG's, another representation of grammars, packrat parsers provide an elegant and powerful parsing algorithm. See Parsing expression grammar.

Read more about this topic:  Top-down Parsing

Famous quotes containing the words time and, time, space and/or complexity:

    Time and death shall depart and say in flying
    Love has found out a way to live, by dying.
    John Dryden (1631–1700)

    The Virgin filled so enormous a space in the life and thought of the time that one stands now helpless before the mass of testimony to her direct action and constant presence in every moment and form of the illusion which men thought they thought their existence.
    Henry Brooks Adams (1838–1918)

    Mere human beings can’t afford to be fanatical about anything.... Not even about justice or loyalty. The fanatic for justice ends by murdering a million helpless people to clear a space for his law-courts. If we are to survive on this planet, there must be compromises.
    Storm Jameson (1891–1986)

    The price we pay for the complexity of life is too high. When you think of all the effort you have to put in—telephonic, technological and relational—to alter even the slightest bit of behaviour in this strange world we call social life, you are left pining for the straightforwardness of primitive peoples and their physical work.
    Jean Baudrillard (b. 1929)