From 44653a06a9f66e5db4052c468800ac5e9cbe4320 Mon Sep 17 00:00:00 2001 From: Kia <kia@special-circumstanc.es> Date: Sun, 16 Aug 2020 17:53:09 -0600 Subject: [PATCH] start case D --- cfg_utils.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/cfg_utils.py b/cfg_utils.py index 6856ecb..7d18eb4 100644 --- a/cfg_utils.py +++ b/cfg_utils.py @@ -463,8 +463,18 @@ class CFGBoltzmann: return [sum] else: - # CASE D (the full convolution) - + # CASE D + # Here we must do the full convolution to account for every + # possible way that the total length of the desired string can + # be split between the nonterminal at X_ijk and the remaining + # segment of the rule (from k+1 to the end of the rule) + + # Here, L will be the number of characters produced by X_ijk + # L will therefore go from 1 (we disallow epsilon-productions so + # X_ijk must produce at least one character) to: + # Total Characters Requested - (minimum number of characters generated by k+1 to end of rule) + # which will be: + # return 0 -- GitLab