C# Class CFGLib.Grammar

Represents a concrete (probabilistic) context free grammar
Inheritance: BaseGrammar
Show file Open project: ellisonch/CFGLib Class Usage Examples

Public Methods

Method Description
AddProduction ( Production production ) : void
Grammar ( IEnumerable productions, Nonterminal start ) : System
ShallowClone ( ) : BaseGrammar
ToCNF ( ) : CNFGrammar

Returns a new grammar that is the CNF equivalent of this grammar. WARNING: currently this does not always preserve probabilities!

Protected Methods

Method Description
RemoveProductionWithoutSimplifying ( Production production ) : void

Private Methods

Method Description
ProductionsFrom ( Nonterminal lhs ) : IEnumerable

Method Details

AddProduction() public method

public AddProduction ( Production production ) : void
production Production
return void

Grammar() public method

public Grammar ( IEnumerable productions, Nonterminal start ) : System
productions IEnumerable
start Nonterminal
return System

RemoveProductionWithoutSimplifying() protected method

protected RemoveProductionWithoutSimplifying ( Production production ) : void
production Production
return void

ShallowClone() public method

public ShallowClone ( ) : BaseGrammar
return BaseGrammar

ToCNF() public method

Returns a new grammar that is the CNF equivalent of this grammar. WARNING: currently this does not always preserve probabilities!
public ToCNF ( ) : CNFGrammar
return CNFGrammar