1.6 KiB
Język — różne perspektywy
Słowo wstępne
W matematyce istnieją dwa spojrzenia na rzeczywistość: ciągłe i dyskretne.
Otaczająca nas rzeczywistość fizyczna jest z natury ciągła (przynajmniej jeśli nie operujemy w mikroskali), lecz język jest dyskretnym wyłomem w ciągłej rzeczywistości.
Lingwistyka matematyczna
Przypomnijmy sobie definicję języka przyjętą w lingwistyce matematycznej, w kontekście na przykład teorii.
Alfabetem nazywamy skończony zbiór symboli.
Łańcuchem nad alfabetem $\Sigma$ nazywamy dowolny, skończony, ciąg złożony z symboli z $\Sigma$
Językiem nazywamy dowolny, skończony bądź nieskończony, zbiór łańcuchów.
W tym formalnym ujęciu językami są na przykład następujące zbiory:
- ${\mathit{poniedziałek},\mathit{wtorek},\mathit{środa},\mathit{czwartek},\mathit{piątek},\mathit{sobota},\mathit{niedziela}$
- ${\mathit{ab},\mathit{abb},\mathit{abbb},\mathit{abbbb},\ldots}$
To podejście, z jednej strony oczywiście nie do końca się potocznym rozumieniem słowa język, z drugiej kojarzy nam się z takimi narzędziami informatyki jak wyrażenia regularne, automaty skończenie stanowe czy gramatyki języków programowania.
import regex as re
rx = re.compile(r'ab+')
rx.search('żabbba').group(0)
abbb
import rstr
rstr.xeger(r'ab+')
abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb