Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
-
- Użytkownik
- Posty: 7
- Rejestracja: 5 paź 2014, o 14:12
- Płeć: Mężczyzna
- Lokalizacja: Polska
- Podziękował: 2 razy
Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Robię zadania z rachunku predykatów, z podręcznika Murawskiego i Świrydowicza "Wstęp do teorii mnogości". Poniżej kilka przykładów, które własnymi siłami rozwiązałem, brak jest jednak w podręczniku odpowiedzi, stąd chcę je skonsultować.
Zapisać w języku r. predykatów zdania:
C(x) - x jest człowiekiem
M(x) - x jest matematykiem
Archimedes jest człowiekiem
a - Archimedes
\(\displaystyle{
C(a)
}\)
Każdy matematyk jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Niektórzy matematycy są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge C(x))
}\)
Żaden matematyk nie jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow \neg C(x))
}\)
Niektórzy matematycy nie są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge \neg C(x))
}\)
Tylko ludzie są matematykami
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Każdy człowiek ma psa, na którego schodzi
P(x) - x jest psem
S(x,y) - x schodzi na y
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y (P(y) \wedge S(x,y)))
}\)
Są rzeczy na niebie i na ziemi, o których nie śniło się filozofom
R(x) - x jest rzeczą
N(x) - x jest na niebie
Z(x) - x jest na ziemi
F(x) - x jest filozofem
Ś(x, y) - x śniło się y
\(\displaystyle{
\exists x (R(x) \wedge N(x) \wedge Z(x) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y)))
}\)
Jeszcze się taki nie urodził co by wszystkim dogodził
C(x) - x jest człowiekiem
U(x) - x się urodził
D(x, y) - x dogodził y
\(\displaystyle{
\neg \exists x (C(x) \wedge U(x) \wedge \forall y (C(y) \Rightarrow D(x, y))) \\
\Leftrightarrow \forall x (\neg U(x) \vee \neg C(x) \vee \exists y (C(y) \wedge \neg D(x,y))) \\
\Leftrightarrow \forall x ((U(x) \wedge C(x)) \Rightarrow \exists y (C(y) \wedge \neg D(x,y)))
}\)
Każdy ma swoją żabę, co przed nim ucieka, i swojego zająca, którego się boi
C(x) - x jest człowiekiem
Ż(x) - x jest żabą
Z(x) - x jest zającem
B(x, y) - x ma y którego się boi
U(x, y) - x ma y, co przed nim ucieka
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge B(x, z) \wedge U(x, y)))
}\)
Zapisać w języku r. predykatów zdania:
C(x) - x jest człowiekiem
M(x) - x jest matematykiem
Archimedes jest człowiekiem
a - Archimedes
\(\displaystyle{
C(a)
}\)
Każdy matematyk jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Niektórzy matematycy są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge C(x))
}\)
Żaden matematyk nie jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow \neg C(x))
}\)
Niektórzy matematycy nie są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge \neg C(x))
}\)
Tylko ludzie są matematykami
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Każdy człowiek ma psa, na którego schodzi
P(x) - x jest psem
S(x,y) - x schodzi na y
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y (P(y) \wedge S(x,y)))
}\)
Są rzeczy na niebie i na ziemi, o których nie śniło się filozofom
R(x) - x jest rzeczą
N(x) - x jest na niebie
Z(x) - x jest na ziemi
F(x) - x jest filozofem
Ś(x, y) - x śniło się y
\(\displaystyle{
\exists x (R(x) \wedge N(x) \wedge Z(x) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y)))
}\)
Jeszcze się taki nie urodził co by wszystkim dogodził
C(x) - x jest człowiekiem
U(x) - x się urodził
D(x, y) - x dogodził y
\(\displaystyle{
\neg \exists x (C(x) \wedge U(x) \wedge \forall y (C(y) \Rightarrow D(x, y))) \\
\Leftrightarrow \forall x (\neg U(x) \vee \neg C(x) \vee \exists y (C(y) \wedge \neg D(x,y))) \\
\Leftrightarrow \forall x ((U(x) \wedge C(x)) \Rightarrow \exists y (C(y) \wedge \neg D(x,y)))
}\)
Każdy ma swoją żabę, co przed nim ucieka, i swojego zająca, którego się boi
C(x) - x jest człowiekiem
Ż(x) - x jest żabą
Z(x) - x jest zającem
B(x, y) - x ma y którego się boi
U(x, y) - x ma y, co przed nim ucieka
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge B(x, z) \wedge U(x, y)))
}\)
-
- Użytkownik
- Posty: 609
- Rejestracja: 10 lis 2009, o 22:39
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Pomógł: 135 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Wszystkie przykłady są zrobione dobrze z wyjątkiem dwóch, gdzie można się troszkę przyczepić:
"Niektórzy matematycy są ludźmi" i "Niektórzy matematycy nie są ludźmi".
Twoje formalizacje dotyczą liczby pojedynczej: "Pewien matematyk nie jest człowiekiem" i "Pewien matematyk nie jest człowiekiem".
By wyrazić tu liczbę mnogą (tzn. większą od jeden) użyj dwóch zmiennych i symbolu równości (który zazwyczaj uważa się za symbol logiczny).
Podobne zastrzeżenie można by mieć do cytatu z Hamleta.
"Niektórzy matematycy są ludźmi" i "Niektórzy matematycy nie są ludźmi".
Twoje formalizacje dotyczą liczby pojedynczej: "Pewien matematyk nie jest człowiekiem" i "Pewien matematyk nie jest człowiekiem".
By wyrazić tu liczbę mnogą (tzn. większą od jeden) użyj dwóch zmiennych i symbolu równości (który zazwyczaj uważa się za symbol logiczny).
Podobne zastrzeżenie można by mieć do cytatu z Hamleta.
-
- Administrator
- Posty: 34295
- Rejestracja: 20 mar 2006, o 21:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 3 razy
- Pomógł: 5203 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
OKszaleniec_mat pisze: ↑29 gru 2020, o 11:35C(x) - x jest człowiekiem
M(x) - x jest matematykiem
Archimedes jest człowiekiem
a - Archimedes
\(\displaystyle{
C(a)
}\)
Każdy matematyk jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Niektórzy matematycy są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge C(x))
}\)
Żaden matematyk nie jest człowiekiem
\(\displaystyle{
\forall x (M(x) \Rightarrow \neg C(x))
}\)
Niektórzy matematycy nie są ludźmi
\(\displaystyle{
\exists x (M(x) \wedge \neg C(x))
}\)
Tylko ludzie są matematykami
\(\displaystyle{
\forall x (M(x) \Rightarrow C(x))
}\)
Brakuje informacji, że \(\displaystyle{ x}\) ma \(\displaystyle{ y}\). Oczywiście to jest kwestia interpretacji, czy "Każdy człowiek ma psa, na którego schodzi" oznacza, że ów człowiek jest właścicielem tego psa, na którego schodzi, czy po prostu, że jest taki pies, na którego on schodzi.szaleniec_mat pisze: ↑29 gru 2020, o 11:35Każdy człowiek ma psa, na którego schodzi
P(x) - x jest psem
S(x,y) - x schodzi na y
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y (P(y) \wedge S(x,y)))
}\)
Wydaje się, że sformułowanie "Są rzeczy na niebie i na ziemi" nie znaczy "Są rzeczy, które są na niebie i na ziemi", ale raczej "Są rzeczy, które są na niebie i są rzeczy, które są na ziemi" i wtedy formalizacja jest inna.szaleniec_mat pisze: ↑29 gru 2020, o 11:35Są rzeczy na niebie i na ziemi, o których nie śniło się filozofom
R(x) - x jest rzeczą
N(x) - x jest na niebie
Z(x) - x jest na ziemi
F(x) - x jest filozofem
Ś(x, y) - x śniło się y
\(\displaystyle{
\exists x (R(x) \wedge N(x) \wedge Z(x) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y)))
}\)
OKszaleniec_mat pisze: ↑29 gru 2020, o 11:35Jeszcze się taki nie urodził co by wszystkim dogodził
C(x) - x jest człowiekiem
U(x) - x się urodził
D(x, y) - x dogodził y
\(\displaystyle{
\neg \exists x (C(x) \wedge U(x) \wedge \forall y (C(y) \Rightarrow D(x, y))) \\
\Leftrightarrow \forall x (\neg U(x) \vee \neg C(x) \vee \exists y (C(y) \wedge \neg D(x,y))) \\
\Leftrightarrow \forall x ((U(x) \wedge C(x)) \Rightarrow \exists y (C(y) \wedge \neg D(x,y)))
}\)
Bardziej naturalnym wydaje się użycie predykatówszaleniec_mat pisze: ↑29 gru 2020, o 11:35Każdy ma swoją żabę, co przed nim ucieka, i swojego zająca, którego się boi
C(x) - x jest człowiekiem
Ż(x) - x jest żabą
Z(x) - x jest zającem
B(x, y) - x ma y którego się boi
U(x, y) - x ma y, co przed nim ucieka
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge B(x, z) \wedge U(x, y)))
}\)
\(\displaystyle{ M(x,y) - x\text{ ma }y}\)
\(\displaystyle{ B(x,y) - x\text{ boi się }y}\)
\(\displaystyle{ U(x,y) - x\text{ ucieka przed }y}\)
JK
-
- Użytkownik
- Posty: 22211
- Rejestracja: 15 maja 2011, o 20:55
- Płeć: Mężczyzna
- Lokalizacja: Bydgoszcz
- Podziękował: 38 razy
- Pomógł: 3755 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Słyszałem że wśród ogrów i krasnali również funkcjonują dwa ostatnie powiedzenia, więc ograniczenie się do ludzi jest błędem.
-
- Administrator
- Posty: 34295
- Rejestracja: 20 mar 2006, o 21:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 3 razy
- Pomógł: 5203 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Czepiasz się. Byłoby błędem na Uniwersytecie Ogrokrasnoludzkim, ale tu jest racjonalną interpretacją.
JK
-
- Użytkownik
- Posty: 7
- Rejestracja: 5 paź 2014, o 14:12
- Płeć: Mężczyzna
- Lokalizacja: Polska
- Podziękował: 2 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Być może jest w tym słuszność. Jednak w podręczniku, prof. Świrydowicz (autor rozdziału) przytacza przykład "Niektórzy ludzie są matematykami" i formalizuje to w analogiczny sposób, dlatego właśnie takie rozwiązanie zaproponowałem.krl pisze: ↑29 gru 2020, o 19:06 Wszystkie przykłady są zrobione dobrze z wyjątkiem dwóch, gdzie można się troszkę przyczepić:
"Niektórzy matematycy są ludźmi" i "Niektórzy matematycy nie są ludźmi".
Twoje formalizacje dotyczą liczby pojedynczej: "Pewien matematyk nie jest człowiekiem" i "Pewien matematyk nie jest człowiekiem".
By wyrazić tu liczbę mnogą (tzn. większą od jeden) użyj dwóch zmiennych i symbolu równości (który zazwyczaj uważa się za symbol logiczny).
Podobne zastrzeżenie można by mieć do cytatu z Hamleta.
Dobrze, w tej wersji wprowadzam zatem predykat M(x,y) - x ma y, i mam:Jan Kraszewski pisze: ↑29 gru 2020, o 19:14Brakuje informacji, że \(\displaystyle{ x}\) ma \(\displaystyle{ y}\). Oczywiście to jest kwestia interpretacji, czy "Każdy człowiek ma psa, na którego schodzi" oznacza, że ów człowiek jest właścicielem tego psa, na którego schodzi, czy po prostu, że jest taki pies, na którego on schodzi.szaleniec_mat pisze: ↑29 gru 2020, o 11:35Każdy człowiek ma psa, na którego schodzi
P(x) - x jest psem
S(x,y) - x schodzi na y
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y (P(y) \wedge S(x,y)))
}\)
\(\displaystyle{ \forall x (C(x) \Rightarrow \exists y (P(y) \wedge M(x,y) \wedge S(x,y)))}\)
Faktycznie, to ma zdecydowanie więcej sensu. Poprawiam na:Jan Kraszewski pisze: ↑29 gru 2020, o 19:14Wydaje się, że sformułowanie "Są rzeczy na niebie i na ziemi" nie znaczy "Są rzeczy, które są na niebie i na ziemi", ale raczej "Są rzeczy, które są na niebie i są rzeczy, które są na ziemi" i wtedy formalizacja jest inna.szaleniec_mat pisze: ↑29 gru 2020, o 11:35Są rzeczy na niebie i na ziemi, o których nie śniło się filozofom
R(x) - x jest rzeczą
N(x) - x jest na niebie
Z(x) - x jest na ziemi
F(x) - x jest filozofem
Ś(x, y) - x śniło się y
\(\displaystyle{
\exists x (R(x) \wedge N(x) \wedge Z(x) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y)))
}\)
\(\displaystyle{
\exists x \exists z (R(x) \wedge R(z) \wedge N(x) \wedge Z(z) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y) \wedge \neg Ś(x, z)))
}\)
\(\displaystyle{Jan Kraszewski pisze: ↑29 gru 2020, o 19:14Bardziej naturalnym wydaje się użycie predykatówszaleniec_mat pisze: ↑29 gru 2020, o 11:35Każdy ma swoją żabę, co przed nim ucieka, i swojego zająca, którego się boi
C(x) - x jest człowiekiem
Ż(x) - x jest żabą
Z(x) - x jest zającem
B(x, y) - x ma y którego się boi
U(x, y) - x ma y, co przed nim ucieka
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge B(x, z) \wedge U(x, y)))
}\)
\(\displaystyle{ M(x,y) - x\text{ ma }y}\)
\(\displaystyle{ B(x,y) - x\text{ boi się }y}\)
\(\displaystyle{ U(x,y) - x\text{ ucieka przed }y}\)
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge M(x, z) \wedge M(x, y) \wedge B(x, z) \wedge U(x, y)))
}\)
-
- Administrator
- Posty: 34295
- Rejestracja: 20 mar 2006, o 21:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 3 razy
- Pomógł: 5203 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
OK.szaleniec_mat pisze: ↑29 gru 2020, o 20:39Dobrze, w tej wersji wprowadzam zatem predykat M(x,y) - x ma y, i mam:
\(\displaystyle{ \forall x (C(x) \Rightarrow \exists y (P(y) \wedge M(x,y) \wedge S(x,y)))}\)
OK.szaleniec_mat pisze: ↑29 gru 2020, o 20:39Faktycznie, to ma zdecydowanie więcej sensu. Poprawiam na:
\(\displaystyle{
\exists x \exists z (R(x) \wedge R(z) \wedge N(x) \wedge Z(z) \wedge \forall y (F(y) \Rightarrow \neg Ś(x, y) \wedge \neg Ś(x, z)))
}\)
Źle - to nie Ty uciekasz przed żabą, ale żaba przed Tobą.szaleniec_mat pisze: ↑29 gru 2020, o 20:39\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge M(x, z) \wedge M(x, y) \wedge B(x, z) \wedge U(x, y)))
}\)
Poza tym pozostaje interpretacja zaimka"swój"...
JK
-
- Użytkownik
- Posty: 7
- Rejestracja: 5 paź 2014, o 14:12
- Płeć: Mężczyzna
- Lokalizacja: Polska
- Podziękował: 2 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Ups, pora robi swoje. Oczywiście należy zmienić na U(y, x).Jan Kraszewski pisze: ↑29 gru 2020, o 20:57Źle - to nie Ty uciekasz przed żabą, ale żaba przed Tobą.szaleniec_mat pisze: ↑29 gru 2020, o 20:39\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge M(x, z) \wedge M(x, y) \wedge B(x, z) \wedge U(x, y)))
}\)
Poza tym pozostaje interpretacja zaimka"swój"...
\(\displaystyle{
\forall x (C(x) \Rightarrow \exists y \exists z (Ż(y) \wedge Z(z) \wedge M(x, z) \wedge M(x, y) \wedge B(x, z) \wedge U(y, x)))
}\)
Co do zaimka, to brakuje mi pomysłu. Mógłbym ewentualnie do predykatu M(x, y) dodać ten zaimek: x ma swój y. Czy taki zabieg byłby poprawny, lub przynajmniej akceptowalny?
-
- Administrator
- Posty: 34295
- Rejestracja: 20 mar 2006, o 21:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 3 razy
- Pomógł: 5203 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
Akceptowalny tak. Choć ja wolałbym to w wersji "\(\displaystyle{ x}\) ma \(\displaystyle{ y}\) i nikt inny nie ma tego \(\displaystyle{ y}\)". Ale nie sądzę, by autor zadania miał na myśli tak szczegółowe rozważania na temat znaczenia użytych w zadaniu sformułowań...szaleniec_mat pisze: ↑29 gru 2020, o 21:04Co do zaimka, to brakuje mi pomysłu. Mógłbym ewentualnie do predykatu M(x, y) dodać ten zaimek: x ma swój y. Czy taki zabieg byłby poprawny, lub przynajmniej akceptowalny?
JK
-
- Użytkownik
- Posty: 7
- Rejestracja: 5 paź 2014, o 14:12
- Płeć: Mężczyzna
- Lokalizacja: Polska
- Podziękował: 2 razy
Re: Zapisać zdania w języku rachunku predykatów (Murawski, Świrydowicz)
W takim razie nie pozostaje mi nic innego jak podziękować. Dziękuję za pomoc Panie Doktorze.