zefciu napisał(a):
rafal3006 napisał(a):
Oj, zefciu zefciu, to równanie to po prostu zapis tabeli zero-jedynkowej operatora OR w równaniu algebry Boole'a
Wiem. Ale zapis wykonany w taki sposób, że zrozumie go tylko ten, co już wie, co oznacza ten operator. Tymczasem celem definicji jest wyjaśnienie pojęcia komuś, kto tego pojęcia nie zna.
Najgorszym możliwym wyjaśnieniem to wyjmowanie debilnych tabelek zero-jedynkowych … z których ziemskim matematykom wychodzą takie brednie jak:
„z fałszu wynika wszystko”
Czy myślisz że Boole’a odkryłby to co odkrył gdyby jego naturalna logika człowieka?
… a dlaczego nie można wytłumaczyć tego w I klasie szkoły podstawowej tak?
Jutro pójdę do kina i do teatru
Y=K*T
co to znaczy drogie dzieci?
Jaś:
To znaczy że dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy jutro pójdę do kina (K=1) i do teatru (T=1)
… kiedy skłamiesz Jasiu?
Jaś:
Skłamię we wszystkich pozostałych przypadkach (możliwych przeczeniach), czyli:
Skłamię (~Y=1) wtedy i tylko wtedy gdy:
~K*~T =1*1 =1 - nie pójdę do kina i nie pójdę do teatru
lub
~K*T = 1*1 =1 - nie pójdę do kina i pójdę do teatru
lub
K*~T = 1*1 =1 - pójdę do kina i nie pójdę do teatru
Stąd mamy:
~Y = ~K*~T + ~K*T + K*~T
Funkcje logiczne Y i ~Y zapisane jedna pod drugą to SYMBOLICZNA definicja operatora AND:
Kod:
Dotrzymam słowa (Y)
A: K* T = Y
;Skłamię (~Y)
B:~K*~T =~Y
C:~K* T =~Y
D: K*~T =~Y
Dla kodowania zgodnego ze zdaniem A otrzymujemy zero-jedynkową tabelę operatora AND.
A: K*T =Y
Prawo Prosiaczka:
(K=1) = (~K=1)
(T=1)=(T=0)
(Y=1) =(~Y=0)
Stąd otrzymujemy tabelę zero-jedynkową operatora AND:
Kod:
Definicja symboliczna |Definicja zero-jedynkowa
operatora AND |operatora AND
|Dla punktu odniesienia Y=K*T
Dotrzymam słowa (Y) | K T Y=K*T
A: K* T = Y | 1* 1 =1
;Skłamię (~Y)
B:~K*~T =~Y | 0* 0 =0
C:~K* T =~Y | 0* 1 =0
D: K*~T =~Y | 1* 0 =0
Oczywistym jest że naturalna logika człowieka to definicje symboliczne wszystkich operatorów logicznych o których Ziemianie nie mają najmniejszego pojęcia.
Największym skandalem logiki Ziemian jest fakt, że nie zna ona absolutnie genialnych praw Prosiaczka, dzięki którym możemy sobie wędrować z definicji symbolicznej do definicji zero-jedynowej i odwrotnie.
Ciekawe kiedy Ziemianie się opamiętają i zaczną myśleć matematycznie, także w matematyce, absolutnie naturalną logiką człowieka - bo to jest JEDYNA poprawna logika matematyczna.
Wszelkie logiki formalne znane ziemianom z definicji są sprzeczne z naturalną logika człowieka - ich miejsce jest w piekle, na wiecznych piekielnych mękach.
Co widzisz Zefciu w takim podejściu do logiki matematycznej?
Czyli zawsze, przy tłumaczeniu logiki matematycznej wędrujemy od definicji symbolicznych operatorów logicznych w 100% zgodnych z naturalną logiką człowieka do tabel zero-jedynkowych.
Pytanie:
Po kiego grzyba generować tabele zero-jedynkowe skoro w definicjach symbolicznych gdzie wszystkie zmienne mamy sprowadzone do jedynek nie ma żadnej tabeli zero-jedynkowej?
Oczywistym jest że można uprawiać logika matematyczną na poziomie definicji symbolicznych (równań algebry Boole’a) wykopując wszelkie tabele zero-jedynkowe w kosmos.
Dokładnie zgodnie z ta ideą powstanie wkrótce „Algebra Kubusia dla Liceum”, bo po kiego grzyba katować dzieciaków sprzętową algebrą Boole’a, czyli tabelami zero-jedynkowymi - to jest absolutnie zbędne!
zefciu napisał(a):
Cytuj:
To podaj kontr przykład gdzie zapis:
if W then A else B
jest wyrażeniem a nie instrukcją warunkową - na razie nie podałeś.
Łżesz, podałem - haskell.
Jak napisał Fiklit w haskelu nie ma instrukcji warunkowych, czy naprawdę wierzysz że można napisać choćby najmniejszy program komputerowy bez instrukcji warunkowych?
Weźmy taki prymityw:
Badasz programem zmienną o nazwie ALARM.
Działanie:
Alarm =1 - dzwoń po policję
Alarm =0 - nie nie rób
W asemblerze Z80 ten program wygląda tak:
Alarm:
IN A,(PA) - odczytaj port A
RRCA ;Ustaw CY=b0
JP NC,Alarm ;Jeśli CY=0 to ignoruj
CALL Dzwoń :Jeśli CY=1 - alarm się włączył
JP Alarm
Jak napiszesz ten program bez instrukcji warunkowej to kasuję AK.
Z faktu że w jakimś tam języku wysokiego poziomu nie ma instrukcji warunkowych nie oznacza że nie wstawia ich kompilator programu haskell.
Poza tym napisanie kompilatora haspel nie jest możliwe bez użycia instrukcji warunkowych.
Dowód:
Zabieram z dowolnego mikroprocesora wszystkie instrukcje warunkowe, zostawiając wyłącznie instrukcje podstawienia (bo tyle zostanie) a ty mi napisz choćby program Alarm wyżej.
Ja nie wiem jak można takich banałów nie rozumieć?
zefciu napisał(a):
Cytuj:
... a kto twierdził wyżej że zapis:
if p then p else q
jest operatorem OR?
Ja twierdziłem, że ten zapis rozumiany jako wyrażenie warunkowe jest tożsamy operatorowi OR.
… no to daję ci przykład przedszkolaka wyżej.
Jutro pójdziemy do kina lub do teatru
Y=K+T
… a ty mi zapisz tym swoim zakichanym pytonem, przy użyciu zdefiniowanych w nim operatorów OR i AND kiedy jutro dotrzymam słowa a kiedy skłamię.
Przypominam definicje z pytona które podałeś:
rafal3006 napisał(a):
zefciu napisał(a):
Co ciekawe - w Pythonie mamy następujące definicje operatorów "or" i "and":
a or b zdefiniowany jest jako if a then a else b
a and b zdefiniowany jest jako if a then b else a
Pośmiejmy się zefciu razem:
AK:
A.
Dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy jutro pójdę do kina (K=1) lub do teatru (T=1)
Y = K+T
… a kiedy skłamię?
Przejście do logiki ujemnej:
~Y=~K*~T
B.
Skłamię (~Y=1) wtedy i tylko wtedy gdy jutro nie pójdę do kina (~K=1) lub nie pójdę do teatru (~T=1)
~Y=~K*~T
Poproszę o przetłumaczenie zdań na twój zakichany język pytona zdań A i B?
… i odpowiedź na pytanie który Ziemianin zrozumie co napisałeś?