commit 85c118bfbe6ac7b1a0bca1c691c63e27e420bfbe Author: Filip Gralinski Date: Sat Feb 12 15:54:02 2022 +0100 Init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b25c15b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*~ diff --git a/wyk/01_Jezyk.ipynb b/wyk/01_Jezyk.ipynb new file mode 100644 index 0000000..1905717 --- /dev/null +++ b/wyk/01_Jezyk.ipynb @@ -0,0 +1 @@ +{"cells":[{"cell_type":"markdown","metadata":{},"source":["## Język — różne perspektywy\n\n"]},{"cell_type":"markdown","metadata":{},"source":["### Słowo wstępne\n\n"]},{"cell_type":"markdown","metadata":{},"source":["W matematyce istnieją dwa spojrzenia na rzeczywistość: ciągłe i dyskretne.\n\nOtaczająca nas rzeczywistość fizyczna jest z natury ciągła\n(przynajmniej jeśli nie operujemy w mikroskali), lecz język\njest dyskretnym wyłomem w ciągłej rzeczywistości.\n\n"]},{"cell_type":"markdown","metadata":{},"source":["### Lingwistyka matematyczna\n\n"]},{"cell_type":"markdown","metadata":{},"source":["Przypomnijmy sobie definicję języka przyjętą w lingwistyce\nmatematycznej, w kontekście na przykład teorii.\n\n****Alfabetem**** nazywamy skończony zbiór symboli.\n\n****Łańcuchem**** nad alfabetem $\\Sigma$ nazywamy dowolny, skończony,\nciąg złożony z symboli z $\\Sigma$\n\n****Językiem**** nazywamy dowolny, skończony bądź nieskończony, zbiór łańcuchów.\n\nW tym formalnym ujęciu językami są na przykład następujące zbiory:\n\n- ${\\mathit{poniedziałek},\\mathit{wtorek},\\mathit{środa},\\mathit{czwartek},\\mathit{piątek},\\mathit{sobota},\\mathit{niedziela}$\n- ${\\mathit{ab},\\mathit{abb},\\mathit{abbb},\\mathit{abbbb},\\ldots}$\n\nTo podejście, z jednej strony oczywiście nie do końca się potocznym\nrozumieniem słowa *język*, z drugiej kojarzy nam się z takimi\nnarzędziami informatyki jak wyrażenia regularne, automaty skończenie\nstanowe czy gramatyki języków programowania.\n\n"]},{"cell_type":"code","execution_count":1,"metadata":{},"outputs":[{"name":"stdout","output_type":"stream","text":"abbb"}],"source":["import regex as re\nrx = re.compile(r'ab+')\n\nrx.search('żabbba').group(0)"]},{"cell_type":"code","execution_count":1,"metadata":{},"outputs":[{"name":"stdout","output_type":"stream","text":"abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"}],"source":["import rstr\n\nrstr.xeger(r'ab+')"]}],"metadata":{"org":null,"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.5.2"}},"nbformat":4,"nbformat_minor":0} \ No newline at end of file diff --git a/wyk/01_Jezyk.org b/wyk/01_Jezyk.org new file mode 100644 index 0000000..8f55daa --- /dev/null +++ b/wyk/01_Jezyk.org @@ -0,0 +1,54 @@ + +* 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. + +#+BEGIN_SRC ipython :session mysession :exports both :results raw drawer + import regex as re + rx = re.compile(r'ab+') + + rx.search('żabbba').group(0) +#+END_SRC + +#+RESULTS: +:results: +abbb +:end: + +#+BEGIN_SRC ipython :session mysession :exports both :results raw drawer + import rstr + + rstr.xeger(r'ab+') +#+END_SRC + +#+RESULTS: +:results: +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +:end: