Sie haben recht, es gibt immer einen Zusammenhang in gewissem Sinne. Ich glaube nicht, dass man verstehen kann, was "Kontext" in "kontextfrei" bedeutet, ohne eine Produktion zu verstehen.
Eine Produktion ist eine Substitutionsregel. Es heißt, dass Sie zum Erzeugen von Zeichenfolgen in der Sprache das, was links ist, durch das, was rechts ist, ersetzen können:
A -> xy
Dies bedeutet, dass die abstrakte Folge A durch das Zeichen "x" gefolgt vom Zeichen "y" ersetzt werden kann. Sie können auch komplexere Produktionen haben:
zA -> xy
Dies bedeutet, dass das Zeichen "z" gefolgt von der abstrakten Sequenz A durch die Zeichen "x" und "y" ersetzt werden kann.
Eine kontextfreie Produktion bedeutet einfach, dass nur eins auf der linken Seite ist. Das erste Beispiel ist kontextfrei, da A durch "x" und "y" ersetzt werden kann, unabhängig davon, was davor oder danach kommt. Im zweiten Beispiel muss jedoch das Zeichen "z" vor dem A stehen, und dann kann die Kombination durch "x" und "y" ersetzt werden, sodass ein gewisser Zusammenhang besteht.
Eine kontextfreie Grammatik ist dann nur eine Grammatik mit nur kontextfreien Produktionen.
Das zweite Beispiel ist eigentlich ein Beispiel für eine uneingeschränkte Produktion. Es gibt eine andere Kategorie zwischen kontextfrei und uneingeschränkt, die als "kontextsensitiv" bezeichnet wird. Ein Beispiel für eine kontextsensitive Produktion ist:
zA -> zxy
Der Unterschied besteht darin, dass das, was vor A (und nach A) auf der linken Seite steht, auf der rechten Seite erhalten bleiben muss. Dies bedeutet effektiv, dass nur A substituiert wird, aber nur im richtigen Kontext substituiert werden kann.