Class: CFGHelper::ChomskyNFSimplifier
- Inherits:
-
Object
- Object
- CFGHelper::ChomskyNFSimplifier
- Defined in:
- lib/cfg_helper/chomsky_nf_simplifier.rb
Overview
simplify chomsky normal form
Instance Method Summary collapse
Instance Method Details
#run(new_rules, alphabet) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/cfg_helper/chomsky_nf_simplifier.rb', line 6 def run(new_rules, alphabet) vars_with_one_letter = _vars_with_one_letter new_rules, alphabet return new_rules if vars_with_one_letter.empty? extendible_rules = _find_extendible_rules new_rules, vars_with_one_letter.keys return new_rules if extendible_rules.empty? missing_rules = _missing_rules extendible_rules, vars_with_one_letter _add_missing_rules missing_rules, new_rules new_rules end |