Pojęcie wyrażenia

Punktem wyjścia języka potocznego jest jego alfabet, a więc pewna ilość znaków, które oznaczają rozmaite dźwięki mowy ludzkiej.

Znaki powyższe możemy łączyć w pewne układy, np. układ sześciu kolejnych liter alfabetu łacińskiego abcdef, a układy takie możemy podzielić na dwie odrębne grupy:

1) układy fonetyczne przedstawiające układ dźwięków, który umiemy wypowiedzieć;

2) układy niefonetyczne, których wypowiedzieć się nie da i które z tego powodu są dla nas nieużyteczne.

Podział na powyższe grupy jest mało dokładny i możemy z łatwością podać przykłady takich układów liter, o których trudno nam będzie rozstrzygnąć, do której grupy należą.

Układy typu 1) dzielimy znów na dwie podgrupy:

1a) układy fonetyczne, którym nadaliśmy pewne określone znaczenie,

1b) układy fonetyczne, które żadnego znaczenia w dotychczasowej fazie rozwojowej języka nie posiadają.

Rozwój języka z punktu widzenia powyższego podziału polega na ustawicznej wymianie elementów pomiędzy zbiorami 1a) i 1b). Ścisłą granicę pomiędzy tymi zbiorami trudno jest ustalić nawet w pewnej określonej chwili, a z biegiem czasu wykonuje ona ciągłe wahania, W miarę utrwalania się tej granicy język przestaje się rozwijać.

Zgoła odmiennie przedstawia się ta sprawa w nauce dedukcyjnej, o której rozwoju decyduje właśnie jak najbardziej precyzyjne ustalenie pojęć. Granice pomiędzy nimi muszą być ostre, bo wszelkie ich wahania prowadzą do nieporozumień świadczących o niedoskonałości danej nauki. Ponieważ interesować nas będzie język symboliczny logiki semantycznej, więc zajmiemy się najpierw jego alfabetem, a następnie przeprowadzimy jego szczegółową analizę.

W celu osiągnięcia największej możliwie prostoty, alfabet nasz ograniczymy do dwóch różnych znaków: ∗, c, zgodnie z ustaloną już dla semantyki terminologią. Znaki te nie posiadają żadnego znaczenia, a w szczególności znak c nie oznacza tu żadnego dźwięku. Układem nazywać będziemy dowolne zestawienie skończonej ilości znaków ∗, c, wypisanych obok siebie np.: ∗ c c, ∗c ∗ c c, cc ∗ c, ∗ ∗ cc,... Układy dzielić będziemy na układy regularne, czyli wyrażenia i układy nieregularne. Podział ten jest ścisłym odpowiednikiem podziału układów języka potocznego na fonetyczne i niefonetyczne.

Pojęcie wyrażenia wprowadzamy przy pomocy następujących reguł o charakterze indukcyjnym:


    ⎧ c jest wyrażeniem,
W ⎨
    ⎩ 1 jeśli E, F są wyrażeniami, to ∗ E F jest wyrażeniem.

Litery E, F są tutaj zmiennymi pomocniczymi, które nie należą do naszego języka. Regułę W należy po prostu rozumieć w ten sposób, że do klasy wyrażeń zaliczamy układ c, a następnie musimy do niej zaliczyć układ ∗ E F wtedy i tylko wtedy, gdy E, F są układami, których przynależność do naszej klasy została uprzednio stwierdzona. Tak np. układy : c, ∗ c c, ∗ c ∗ c c, ∗ ccc, ∗ ∗ cc∗ c c są wyrażeniami, układy zaś: ∗, ∗ c, c ∗, ∗ ∗ ∗, ∗ ∗ c, ∗ c ∗, c ∗ ∗,... są układami nieregularnymi.

Bardzo proste kryterium pozwalające nam przekonać się, czy dany z góry układ jest wyrażeniem, podał po raz pierwszy p. Skarżeński [1]

Podział układów na wyrażenia i układy nieregularne przy pomocy reguły W może się wydać sztucznym w porównaniu z bardzo naturalnym odpowiednikiem, jaki posiada on w języku potocznym. Aby zbić powyższy zarzut, wystarczy przytoczyć fakt, że posługiwanie się pojęciem wyrażenia uwalnia nas od używania nawiasów oraz interpunkcji, która w języku potocznym sprawia nam wiele kłopotu i prowadzi doi nieporozumień. Tak np. układ ∗ ∗ cc ∗ cc, ∗ ∗ ccc, ∗ c ∗ cc nie jest wyrażeniem, ale stanowi zespół dokładnie trzech po sobie następujących wyrażeń ∗ ∗ cc ∗ cc, ∗ ∗ ccc, ∗ c ∗ ∗ cc i nie potrafimy w żaden inny sposób rozbić go na same wyrażenia. Pisanie przecinków pomiędzy poszczególnymi wyrażeniami jest zatem najzupełniej zbędne. Postulat jednoznaczności odczytu jest w naszym języku wytyczną podziału układów na regularne i nieregularne, zupełnie podobnie jak w języku potocznym postulat fonetycznego odczytu prowadzi do podziału układów na fonetyczne i niefonetyczne.