Quantcast
Wątki bez odpowiedzi | Aktywne wątki Teraz jest Wt sie 26, 2025 6:19



Ten wątek jest zablokowany. Nie możesz w nim pisać ani edytować postów.  [ Posty: 540 ]  Przejdź na stronę Poprzednia strona  1 ... 23, 24, 25, 26, 27, 28, 29 ... 36  Następna strona
 Nowa teoria implikacji 
Autor Wiadomość
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
Natomiast pierwsze to debilizm, bo jak można mylić warunek w instrukcji skoku warunkowego (np. wskaźnik przeniesienia CY) z blokiem instrukcji do wykonania?
Przecież tłukłem do tego zakutego łba już dwa razy, że to nie jest blok instrukcji, tylko wyrażenie


Pn paź 13, 2014 14:02
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
rafal3006 napisał(a):
Natomiast pierwsze to debilizm, bo jak można mylić warunek w instrukcji skoku warunkowego (np. wskaźnik przeniesienia CY) z blokiem instrukcji do wykonania?
Przecież tłukłem do tego zakutego łba już dwa razy, że to nie jest blok instrukcji, tylko wyrażenie

Proponuję uspokoić dyskusję.
Instrukcja warunkowa jak sama nazwa wskazuje jest INSTRUKCJĄ!
Jest instrukcją zrozumiałą dla każdego programisty i oznacza co następuje:
if W then A else B
W tłumaczeniu na polski:
Jeśli zajdzie warunek W (np. X<Y) to musisz wykonać blok instrukcji A
Jeśli zajdzie warunek ~W (tu. X>=Y) to musisz wykonać blok instrukcji B

KONIEC!
To jest super jasne i precyzyjne zrozumiałe dla każdego.

Weźmy teraz wyrażenie zefcia:
if W then W else B

Poproszę Zefica o przetłumaczenie tego badziewia na polski.
Co to znaczy pierwsze W i co to znaczy drugie W bo z zapisu zrozumiałego dla każdego programisty wychodzi dokładnie to:
Jeśli zajdzie warunek W (np. X<Y) to musisz wykonać W ?!
Jeśli zajdzie warunek ~W (tu. X>=Y) to musisz wykonać blok instrukcji B

Czy widzisz jaka kompromitacja twórców pytona?

zefciu napisał(a):
rafal3006 napisał(a):
Ta definicja to nic innego jak instrukcja warunkowa:
If (warunek p) then q else ~q
Nie instrukcja, tylko wyrażenie. Ale wyjątkowo masz rację. Tak można w pewnych językach zapisać równoważność.

Nie w "pewnych" tylko w absolutnie wszystkich od asemblera po dowolny język programowania.
Jeśli twierdzisz że jest inaczej to podaj kontrprzykład.
Instrukcja warunkowa „if W then A else B” występuje w kodzie programu i dotyczy kodu programu (jest programem), tak więc to jest instrukcja, żadne wyrażenie. Powoduje ona rozgałęzienie w programie zależne od warunku W i jest FUNDAMENTEM wszelkich języków programowania.

Zefciu, ty umiesz czytać ze zrozumieniem?

Napisałem:
If (warunek p) then q else ~q
… a ty bredzisz że to nie jest instrukcja?

Po pierwsze i najważniejsze: naucz się odróżniać instrukcję warunkową od czegokolwiek innego.
Jeśli napisałem że to jest instrukcja warunkowa zrozumiała dla każdego programisty- matoła to nie chrzań mi że to nie jest instrukcja bo zejdziesz poziom niżej :)

zefciu napisał(a):
Ale wyjątkowo masz rację. Tak można w pewnych językach zapisać równoważność.

Co to znaczy wyjątkowo?

Zapis:
if p then q else ~q
Zawsze musi być odczytany jednoznacznie jako:
Jeśli zajdzie p to wykonaj blok instrukcji q
p=>q
Jeśli zajdzie ~p to wykonaj blok instrukcji ~q
~p=>~q
… a to jest oczywista równoważność:
p<=>q = (p=>q)*(~p=>~q)
cnd

_________________
Algebra Kubusia - nowa teoria zbiorów


Pn paź 13, 2014 16:10
Zobacz profil
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
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


zefciu napisał(a):
rafal3006 napisał(a):
Budowę w języku programowania operatorów OR i AND z użyciem bramki implikacji prostej wymyślił jakiś debil.
Sam jesteś debil. Taka definicja tych operatorów jest uzasadniona i umożliwia uproszczenie notacji w przypadku wartości domyślnych.

Operatory OR i AND mają tyle wspólnego z instrukcją warunkową, będąca ewidentną równoważnością co pies z kurą.

Zapis:
if p then q else ~q
to ewidentna instrukcja warunkowa:
Jeśli zajdzie p to wykonaj blok instrukcji q
p=>q =1
Jeśli zajdzie ~p wykonaj inny blok instrukcji, czyli blok różny od q (~q)
~p=>~q =1
Całość to oczywista równoważność:
p<=>q = (p=>q)*(~p=>~q)

Zapis w którym p jest tym samym co q:
if p then p else q
Jest ewidentnym idiotyzmem a nie instrukcją warunkową.
Z tego powodu ten zapis można rozumieć jak się chce np. u twórców pytona oznacza:
Y=p+q

Równie dobrze twórcy pytona mogli sobie zdefiniować operator OR tak:
bleble p kuku q
Jeśli przyjmą że to jest definicja operatora OR:
Y=p+q
to mogą se taki zapis używać a kompilator poprawnie to rozpozna jako:
Y=p+q

_________________
Algebra Kubusia - nowa teoria zbiorów


Pn paź 13, 2014 16:34
Zobacz profil
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
Wykłady z algebry Kubusia
… z podziękowaniem dla Zefcia.

Temat:
Instrukcja warunkowa
Implikacje urojone

zefciu napisał(a):
Cytuj:
Rozważmy instrukcję warunkową:
if W then A else B

Dla każdego programisty jest oczywistością że:
A.
Jeśli zajdzie warunek W (W=1) to na pewno => nastąpi skok do adresu A
W=>A =1

C1.
Jeśli zajdzie warunek ~W (~W=1) to na pewno => nastąpi skok do adresu B
~W=>B =1

Dla każdego programisty jest oczywistością że musi być:
B = ~A

Twoje nadużycie symbolu "=" jest przerażające. Weźmy zdanie "jeśli mam mięso w lodówce, to zróbmy sobie kotlety. W przeciwnym wypadku chodźmy na kebaba.
Według Ciebie wyrażenie "nie mam mięsa w lodówce" to jest to samo, co polecenie "chodźmy na kebaba". Mieszasz wyrażenia i polecenia i Ci wychodzą brednie.

Warunek = mam mięso w lodówce

Jeśli mam mięso w lodówce to zróbmy sobie kotlety inaczej chodźmy na kebaba
if mięso w lodówce then zróbmy kotlety else chodźmy na kebaba
Tożsame instrukcje cząstkowe to:
if mieso (M) w ldówce then zróbmy kotlety
if brak mięsa w lodówce (~M) then chodźmy na kebaba

Oczywiście to „pójdziemy na kebaba” można tu zastąpić czymkolwiek np.
- pójdziemy do kina
- zaśpiewamy piosenkę
- podskoczymy trzy razy
etc
… dla matematyki to bez znaczenia.

Pierwsze zdanie jest ewidentną obietnicą która na mocy definicji jest implikacją prostą.
A.
Jeśli mam mięso w lodówce to zróbmy sobie kotlety
M=>KT =1
p=>q =1
Mięso w lodówce jest warunkiem wystarczającym => abyśmy zrobili kotlety
Prawdziwość warunku wystarczającego A wymusza fałszywość kontrprzykładu B.
B.
Jeśli mam mięso w lodówce to możemy nie zrobić kotletów
M~~>~KT =0 - zakaz łamania obietnicy A
p~~>~q=0

… a jeśli nie mam mięsa?
Na mocy definicji to jest implikacja prosta, stąd:
M=>KT = ~M~>~KT
C.
Jeśli nie mam mięsa w lodówce to możemy ~> nie zrobić kotletów
~M~>~K =1
~p~>~q =1
Brak mięsa w lodówce jest warunkiem koniecznym ~> abyśmy nie zrobili kotletów
Dlaczego?
Mama do Jasia:
Cholera nie ma mięsa, Jasiu skocz do Bidronki i kup mięso.
Jasiu po 15 min wraca z mięsem.
stąd:
D.
Jeśli nie mam mięsa w lodówce to możemy ~~> zrobić sobie kotlety
~M~~>K =1
~p~~>q =1
Oczywiście całość to implikacja prosta z ewidentnym „rzucaniem monetą” po stronie ~M.

…ale!
Dołożymy do tego kolejną obietnicę wynikającą z instrukcji warunkowej:
E.
Jeśli nie będzie mięsa w lodówce to chodźmy na kebaba
~M=>(KB=~KT) =1
~p=>~q =1
Brak mięsa w lodówce jest warunkiem wystarczającym => abyśmy poszli na kebaba, czyli rezygnujemy z kotletów (KB=~KT).
Kontrprzykład dla zdania E to zdanie F.
F.
Jeśli nie będzie mięsa w lodówce to możemy ~~> nie iść na kebaba
~M~~>(~KB=KT) =0 - złamanie gwarancji matematycznej E
~p~~>q =0

… na mocy definicji zdanie E to obietnica (=implikacja prosta), mamy zatem:
~M=>(KB=~KT) = M~>(~KB=KT)
G.
Jeśli będzie mięso w lodówce to możemy ~> nie jeść kebaba
M~>(~KB=KT) =1
p~>q =1
Mięso w lodówce jest warunkiem koniecznym ~>, abyśmy nie jedli kebaba
lub
H.
Jeśli będzie mięso w lodówce to możemy ~~> jeść kebaba
M~~>(KB=~KT) =1
p~~>~q =1

Zauważmy że zdanie H jest tu sprzeczne z obietnicą A, jednak iloczyn logiczny w instrukcji warunkowej wytnie nam to zdanie co zobaczymy za chwilę.

Przyjmujemy sztywny punktu odniesienia zgodnie ze zdaniem A.
A: M=>K =1
p = mięso
q = kotlety

Jednoczesne złożenie obietnic A i E to iloczyn logiczny funkcji:
(p=>q)*(~p=>~q)
co jest oczywistą równoważnością:
p<=>q = (p=>q)*(~p=>~q)

Jak poprawnie złożyć w postaci iloczynu logicznego zdania A i E?
Kod:
Tabela 1
A: p=>q  =1 |
B: p~~>~q=0 |
C:~p~>~q =1 |E:~p=>~q =1
D:~p~~>q =1 |F:~p~~>q =0
   1   2  3     4   5  6

Jest oczywistym, że druga obietnica (po stronie ~p) dotyczy tego co musimy zrobić w punkcie C, czyli musi być zapisana dokładnie jak wyżej.
Zdania G i H musimy umieścić w obszarze AB456, czyli tylko i wyłącznie tak.
Kod:
Tabela 2
A: p=>q  =1 |G: p~> q =1
B: p~~>~q=0 |H: p~~>~q=1
C:~p~>~q =1 |E:~p=>~q =1
D:~p~~>q =1 |F:~p~~>q =0
   1   2  3     4   5  6

Funkcja jaką otrzymamy po wymnożeniu logicznym:
(p=>q)*(~p=>~q)
to oczywiście równoważność o definicji symbolicznej w obszarze ABCD789 niżej.
Kod:
Tabela 3
A: p=>q  =1 |G: p~> q =1 |A: p=>q  =1 |RA:p<=>q=(p=>q)*(~p=>~q)
B: p~~>~q=0 |H: p~~>~q=1 |B: p~~>~q=0
C:~p~>~q =1 |E:~p=>~q =1 |E:~p=>~q =1 |RC:~p<=>~q=(~p=>~q)*(p=>q)
D:~p~~>q =1 |F:~p~~>q =0 |F:~p~~>q =0
   1   2  3     4   5  6     7   8  9

Kodowanie równoważności symbolicznej z obszaru BCD789.

Dla kodowania zgodnego ze zdaniem RA otrzymujemy zero-jedynkową definicję równoważności w logice dodatniej (bo q):
RA: p<=>q
Prawa Prosiaczka:
(p=1)=(~p=0)
(q=1)=( ~q=1)

Dla kodowania zgodnego ze zdaniem RC otrzymujemy zero-jedynkową definicję równoważności w logice dodatniej (bo q):
C: ~p<=>~q
Prawa Prosiaczka:
(~p=1)=(p=0)
(~q=1)=(q=1)
Kod:
Tabela 4
Definicja symboliczna   |Definicja      |Definicja
                        |zero-jedynkowa |zero-jedynkowa
                        |dla RA:p<=>q   |dla RC:~p<=>~q
RA:              p<=>q  | p    q  p<=>q | ~p   ~q ~p<=>~q
A: p=> q =[ p* q] =1    | 1<=> 1    =1  |  0<=> 0    =1
B: p~~>~q=[ p*~q] =0    | 1<=> 0    =0  |  0<=> 1    =0
RC:             ~p<=>~q |               |
C:~p=>~q =[~p*~q] =1    | 0<=> 0    =1  |  1<=> 1    =1
D:~p~~>q =[~p* q] =0    | 0<=> 1    =0  |  1<=> 0    =0
   1   2    a  b   3      4    5     6     7    8     9


Tożsamość kolumn wynikowych 6 i 9 jest dowodem formalny prawa algebry Boole’a:
R1: p<=>q = ~p<=>~q

W przełożeniu na naszą instrukcję warunkową:
if mięso w lodówce then zróbmy kotlety else chodźmy na kebaba
Mamy!
Zrobimy kotlety wtedy i tylko wtedy gdy jest mięso w lodówce
KT<=>M = (KT=>M)*(~KT=>~M)

Pójdziemy na kebaba (KB=~KT) wtedy i tylko wtedy gdy nie ma mięsa w lodówce
~KT<=>~M = (~KT=>~M)*(KT=>M)

Doskonale widać, że w tej instrukcji warunkowej o wszystkim decyduje człowiek.
Jednak zawsze zachodzi poniższa tożsamość jeśli instrukcja warunkowa jest spełniona w 100%:
Instrukcja warunkowa = operator równoważności

Zauważmy że w świecie niezależnym od człowieka czyli w matematyce i przyrodzie nie ma tak lekko.
Tu wszystko jest niezależne od chciejstwa człowieka.
if pada then są chmury else nie ma chmur
Instrukcje cząstkowe są tu następujące:
if pada then są chmury
P=>CH =1
if nie pada to nie ma chmur
~P=>~CH =0
Drugie zdanie jest fałszywe, dlatego nie uzyskamy tu równoważności.
P<=>CH = (P=>CH)*(~P=>~CH) = 1*0 =0

W równoważności niezależnej od człowieka mamy:
if trójkąt prostokątny then suma kwadratów else nie suma kwadratów
Instrukcje cząstkowe są tu następujące:
if trójkąt prostokątny then suma kwadratów
TP=>SK =1
if nie trójkąt prostokątny then nie suma kwadratów
~TP=>~SK =1

Stąd mamy bezpośrednio definicję symboliczną równoważności:
Kod:
A: TP=> SK =1
B: TP~~>~SK=0
C:~TP=> ~SK=1
D:~TP~~> SK=0

Oczywiście można się tu bawić w implikacje urojone niedostępne w naszym wszechświecie w sposób analogiczny do obietnic gdzie wszystko zależy od człowieka co analizowaliśmy wyżej.

Równoważność z uwzględnieniem implikacji urojonych będzie tu następująca.
A.
Jeśli trójkąt jest prostokątny to na pewno => zachodzi suma kwadratów
TP=>SK = [TP*SK=TP] =1
p=>q =1
Definicja warunku wystarczającego => spełniona bo zbiór TP zawiera się w zbiorze SK
Warunek wystarczający A wymusza fałszywość kontrprzykładu B
B.
Jeśli trójkąt jest prostokątny to może ~~> nie zachodzić suma kwadratów
TP~~>~SK = [TP*~SK] =0
p~~>~q =0
bo zbiory TP i ~SK są rozłączne

… a jeśli trójkąt nie jest prostokątny?
W implikacji urojonej również obowiązuje prawo Kubusia:
TP=>SK = ~TP~>~SK
C.
Jeśli trójkąt nie jest prostokątny to może ~> nie zachodzić suma kwadratów
~TP~>~SK = [~TP*~SK = ~SK] =1
~p~>~q =1
Definicja warunku koniecznego ~> spełniona bo zbiór ~TP zawiera w sobie zbiór ~SK
Oczywistość z powodu tożsamości zbiorów TP=SK która wymusza tożsamość zbiorów ~TP=~SK
Na mocy definicji implikacji w zdaniu D mamy jedynkę.
D.
Jeśli trójkąt nie jest prostokątny to może ~~> zachodzić suma kwadratów
~TP~~>SK = ~TP*SK =1
~p~~>q =1
Oczywiście ta jedynka jest jedynką urojoną niedostępną w naszym wszechświecie, stad całość nazywamy implikacją urojoną

Dla każdego normalnego matematyka jest oczywistością iż w naszym wszechświecie w zdaniu D wyżej musi być ZERO!

Stąd mamy następujący warunek wystarczający prawdziwy.
E.
Jeśli trójkąt nie jest prostokątny to na na pewno nie zachodzi suma kwadratów
~TP=>~SK = [~TP*~SK=~TP] =1
~p=>~q =1
Warunek wystarczający => spełniony bo zbiór ~TP zawiera się w zbiorze ~SK
Prawdziwość zdania E wymusza fałszywość kontrprzykładu F.
F.
Jeśli trójkąt nie jest prostokątny to może ~~> zachodzić suma kwadratów
~TP~~>SK = [~TP*SK] =0
~p~~>q =0
bo zbiory ~TP i SK są rozłączne

… a jeśli trójkąt jest prostokątny?
Tu również możemy się bawić w implikacje urojone gdzie zachodzi prawo Kubusia:
~TP=>~SK = TP=>SK
G.
Jeśli trójkąt jest prostokątny to może ~> zachodzić suma kwadratów
TP~>SK = [TP*SK=SK] =1
p~>q =1
Definicja warunku koniecznego spełniona bo zbiór TP zawiera w sobie zbiór SK
Oczywistość z powodu tożsamości zbiorów P=SK
Na mocy definicji implikacji w zdaniu H mamy tu jedynkę.
H.
Jeśli trójkąt jest prostokątny to może ~~> nie zachodzić suma kwadratów
TP~~>~SK = [TP*~SK] =1
p~~>~q =1
Oczywiście ta jedynka jest jedynką urojoną niedostępną w naszym wszechświecie, stad całość nazywamy implikacją urojoną

Dla każdego normalnego matematyka jest oczywistością iż w naszym wszechświecie w zdaniu H wyżej musi być ZERO!

Przypomnijmy naszą instrukcję warunkową:
if trójkąt prostokątny then suma kwadratów else nie suma kwadratów
Instrukcje cząstkowe są tu następujące:
if trójkąt prostokątny then suma kwadratów
TP=>SK =1
if nie trójkąt prostokątny then nie suma kwadratów
~TP=>~SK =1

Jak poprawnie złożyć w postaci iloczynu logicznego zdania A i E?
Kod:
Tabela 5
A: p=>q  =1 |
B: p~~>~q=0 |
C:~p~>~q =1 |E:~p=>~q =1
D:~p~~>q =1 |F:~p~~>q =0
   1   2  3     4   5  6

Jest oczywistym, że warunek wystarczający E: ~p=>~q dotyczy tego co musi zachodzić w naszym wszechświecie w punkcie C, czyli musi być zapisany dokładnie jak wyżej.
Zdania G i H musimy umieścić w obszarze AB456, czyli tylko i wyłącznie tak.
Kod:
Tabela 6
A: p=>q  =1 |G: p~> q =1
B: p~~>~q=0 |H: p~~>~q=1
C:~p~>~q =1 |E:~p=>~q =1
D:~p~~>q =1 |F:~p~~>q =0
   1   2  3     4   5  6

Funkcja jaką otrzymamy po wymnożeniu logicznym:
(p=>q)*(~p=>~q)
to oczywiście równoważność o definicji symbolicznej w obszarze ABCD789 niżej.
Kod:
Tabela 7
A: p=>q  =1 |G: p~> q =1 |A: p=>q  =1 |RA:p<=>q=(p=>q)*(~p=>~q)
B: p~~>~q=0 |H: p~~>~q=1 |B: p~~>~q=0
C:~p~>~q =1 |E:~p=>~q =1 |E:~p=>~q =1 |RC:~p<=>~q=(~p=>~q)*(p=>q)
D:~p~~>q =1 |F:~p~~>q =0 |F:~p~~>q =0
   1   2  3     4   5  6     7   8  9

Kodowanie równoważności symbolicznej z obszaru BCD789.

Dla kodowania zgodnego ze zdaniem RA otrzymujemy zero-jedynkową definicję równoważności w logice dodatniej (bo q):
RA: p<=>q
Prawa Prosiaczka:
(p=1)=(~p=0)
(q=1)=( ~q=1)

Dla kodowania zgodnego ze zdaniem RC otrzymujemy zero-jedynkową definicję równoważności w logice dodatniej (bo q):
C: ~p<=>~q
Prawa Prosiaczka:
(~p=1)=(p=0)
(~q=1)=(q=1)
Kod:
Tabela 8
Definicja symboliczna   |Definicja      |Definicja
                        |zero-jedynkowa |zero-jedynkowa
                        |dla RA:p<=>q   |dla RC:~p<=>~q
RA:              p<=>q  | p    q  p<=>q | ~p   ~q ~p<=>~q
A: p=> q =[ p* q] =1    | 1<=> 1    =1  |  0<=> 0    =1
B: p~~>~q=[ p*~q] =0    | 1<=> 0    =0  |  0<=> 1    =0
RC:             ~p<=>~q |               |
C:~p=>~q =[~p*~q] =1    | 0<=> 0    =1  |  1<=> 1    =1
D:~p~~>q =[~p* q] =0    | 0<=> 1    =0  |  1<=> 0    =0
   1   2    a  b   3      4    5     6     7    8     9


Tożsamość kolumn wynikowych 6 i 9 jest dowodem formalny prawa algebry Boole’a:
R1: p<=>q = ~p<=>~q

W przełożeniu na naszą instrukcję warunkową:
if trójkąt prostokątny then suma kwadratów else nie suma kwadratów
Mamy!
Trójkąt jest prostokątny wtedy i tylko wtedy gdy zachodzi suma kwadratów
TP<=>SK = (TP=>SK)*(~TP=>~SK) =1*1 =1

Trójkąt nie jest prostokątny wtedy i tylko wtedy gdy nie zachodzi suma kwadratów
~TP<=>~SK = (~TP=>~SK)*(TP=>SK)

Podsumowanie:
1.
Instrukcja warunkowa:
if p then q else ~q
to zawsze równoważność o definicji:
p<=>q = (p=>q)*(~p=>~q)
~p<=>~q = (~p=>~q)*(p=>q)
która może być prawdziwa niezależnie od tego czy mamy do czynienia ze światem żywym (np. człowiek) czy też ze światem martwym np. matematyka.
Przykłady wyżej.
2.
Definicja:
Implikacja urojona to implikacja wchodząca w skład równoważności
3.
W implikacji rzeczywistej nigdy nie zachodzi przemienność argumentów.
W implikacji urojonej będącej częścią równoważności zawsze zachodzi przemienność argumentów.

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 1:39
Zobacz profil
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
Poproszę Zefica o przetłumaczenie tego badziewia na polski.
Wyrażenie, które przyjmuje wartość W, gdy W jest prawdziwe, a w przeciwnym wypadku - wartość Z.

Naprawdę nie wiedziałeś o istnieniu wyrażeń warunkowych (w C - operator ?:)? Od razu widać, że w życiu nie napisałeś linijki działającego kodu.
Cytuj:
Czy widzisz jaka kompromitacja twórców pytona?
Jakie to dziwne, że OpenStack działa, a "Kompuś" nie działa :D


Wt paź 14, 2014 7:01
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
rafal3006 napisał(a):
Poproszę Zefica o przetłumaczenie tego badziewia na polski.
Wyrażenie, które przyjmuje wartość W, gdy W jest prawdziwe, a w przeciwnym wypadku - wartość Z.

Naprawdę nie wiedziałeś o istnieniu wyrażeń warunkowych (w C - operator ?:)? Od razu widać, że w życiu nie napisałeś linijki działającego kodu.

Co to znaczy że W jest prawdziwe?
Weźmy ten twój przykład:
Jeśli jest mięso w lodówce to robimy kotlety inaczej idziemy na kebab
Każdy to zdanie zakoduje w postaci instrukcji warunkowej tak:
if mięso w lodówce then robimy kotlety else idziemy na kebab

Natomiast twój popitolony pyton tłumaczy to zdanie tak:
if mięso w lodówce then mięso w lodówce else kebab
to co wyżej jest matematycznie bez sensu.
Tłumaczymy na polski:
Jeśli mamy mięso w lodówce to mamy mięso w lodówce inaczej idziemy na kebab
Gdzie ty tu widzisz operator OR?
To jest bełkot a nie operator OR.
Tłumaczenie na polski:
Otwieramy lodówką i stwierdzamy mięso w lodówce zatem idziemy na kebab
... a gdzie się podziały te twoje kotlety?

Sens ma przykład który sam zapisałeś:
if mieso w lodówce then robimy kotlety else idziemy na kebab

zefciu napisał(a):
rafal3006 napisał(a):
Czy widzisz jaka kompromitacja twórców pytona?
Jakie to dziwne, że OpenStack działa, a "Kompuś" nie działa :D

Działa bo notacja jest jednoznaczna.
To jest instrukcja warunkowa:
if p then q else ~q

To nie jest instrukcja warunkowa:
if p then p else q
To jest idiotyzm a nie instrukcja warunkowa
Dokładnie z tego powodu pod ten zapis możemy sobie ten zapis zdefiniować jak się komu podoba np.
Y=p+q
Kolejny idiotyzm a nie instrukcja warunkowa to:
if p then q else p
Pod te zapis również możemy podstawić co się komu podoba.
Y=p*q

Oczywiście jak w kompilatorze zamienisz to miejscami to także ten twój OpenStack będzie działał bo będzie miał jednoznacznie zdefiniowane funkcje:
Y=p+q
Y=p*q

Równie dobrze twórcy pytona operatory OR i AND mogliby zdefiniować tak:
bleble p kuku q
Y=p+q
kuku q bleble p
Y=p*q
Każdy kompilator tak zdefiniowane OR i AND przetłumaczy poprawnie i też będzie działał.

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 7:50
Zobacz profil
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
Co to znaczy że W jest prawdziwe?
W pythonie fałszywe są:
  • False
  • None
  • Liczba 0 w różnych typach
  • Puste kontenery
  • Obiekty definiujące metodę __nonzero__ (w py3k __bool__), która zwraca fałszywą wartość
Pozostałe obiekty uważane są za prawdziwe.

Google gryzie?
Cytuj:
Natomiast twój popitolony pyton tłumaczy to zdanie tak

Nie. Nie tak tłumaczy.

Weźmy takie zdanie "weź dziennie tyle tabletek, ile lekarz zalecił, lub 3".

Czyli:
Jeśli lekarz zalecił ileś tabletek, to weź ileś tabletek
Jeśli lekarz nie zalecił Ci konkretnej liczby, to weź 3 tabletki dziennie

Teraz kumasz, czy dalej będziesz już tylko obrażał?
Cytuj:
Działa
Skąd można sciągnąć ten program?


Wt paź 14, 2014 8:04
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
Cytuj:
Natomiast twój popitolony pyton tłumaczy to zdanie tak:
if mięso w lodówce to mięso w lodówce inaczej kebeb

Nie. Nie tak tłumaczy.
A.
Weźmy takie zdanie "weź dziennie tyle tabletek, ile lekarz zalecił, lub 3".

Czyli:
B.
Jeśli lekarz zalecił ileś tabletek, to weź ileś tabletek
Jeśli lekarz nie zalecił Ci konkretnej liczby, to weź 3 tabletki dziennie

Jeśli nie tak tłumaczy to jak ten twój zakichany pyton przetłumaczy twoje zdanie z poprzedniego postu:
if mieso w lodówce then robimy kotlety else idziemy na kebab

Czekam na rozpisanie tego zdania na zdania cząstkowe!

„Weźmy takie zdanie "weź dziennie tyle tabletek, ile lekarz zalecił, lub 3".”
.. ale gdzie tu jest operator OR bo nie widzę?
… co tu robi to „lub”?

Twoje zdanie:
"weź dziennie tyle tabletek ile lekarz zalecił lub weź 3 tabletki".
Definicja spójnika „lub”:
p+q = p*q + p*~q + ~p*q

Założmy że:
p1 = lekarz zalecił 1 tabletkę
q3 = 3 tabeletki
p1+P3 = p1*P3 lub ~p1*P3 lub p1*~p3
co matematycznie oznacza:
(p1+p3) =1 <=> (p1*P3)=1 lub (~p1*P3)=1 lub (p1*~p3)=1
Oczywiście:
(p1*p3) =0
… ale kogo dalej pacjent ma słuchać?
Jakiegoś domorosłego znachora czy lekarza?
… a jak te trzy tabletki spowodują śmierć to kto za to będzie odpowiadał?

Jak widzisz Zefciu spójnik „lub” który użyłeś jest tu idiotyzmem.

Zauważ że sam rozwinąłeś ten twój idiotyzm ze spójnikiem „lub” poprawnie:
B.
Jeśli lekarz zalecił ileś tabletek, to weź ileś tabletek
Jeśli lekarz nie zalecił Ci konkretnej liczby, to weź 3 tabletki dziennie

Twoje zdanie precyzyjnie wygląda tak:
Weź dziennie tyle tabletek ile zalecił lekarz, inaczej weź Y

if LZ then X else Y
Rozwijamy na zdania cząstkowe:
if LZ then X
if ~LZ then Y
W tłumaczeniu na polski:
Warunek wystarczający = zalecenie lekarza
A.
Jeśli lekarz zalecił X tabletek dziennie to weź X
LZ=>X
zalecenie lekarza jest warunkiem wystarczającym aby wziąć X tabletek
Warunek wystarczający A wymusza fałszywość kontrprzykładu B.
B.
Jeśli lekarz zalecił X tabletek to możesz wziąć ~X tabletek?
LZ~~>~X =0
… a jeśli lekarz nie zalecił?

Warunek wystarczający = zalecenie z ulotki leku
C.
Jeśli lekarz nic nie zalecił to weź Y tabletek
~LZ=> Y
Brak zalecenia lekarza jest warunkiem wystarczającym => aby wziąć Y tabletek (dawkowanie typowe z ulotki)
Prawdziwość warunku wystarczającego C wymusza fałszywość kontrprzykładu D
D.
Jeśli lekarz nic nie zalecił to mogę ~~> dawkować inaczej niż w ulotce
~LZ~~>~Y =0

W tym przypadku mamy do czynienia z dwoma warunkami wystarczającymi które mogą istnieć samodzielnie.
Nie jest to równoważność bo może zajść:
X=Y
potencjalne zalecenie lekarza X tabletek może pokryć się z ulotką Y tabletek

Nie zmienia to faktu że zdanie:
if LZ then X else Y
jest INSTRUKCJĄ postępowania, czyli odpowiednikiem program komputerowego

Totalnie bez sensu jest zdanie:
if 1 then 1 else 3

Bo jaka jest prawdziwość/fałszywość warunku W instrukcji warunkowej :
if W then X else Y
czyli pytam jaka jest prawdziwość fałszywość cyfry 1 występującej po if?

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 10:30
Zobacz profil
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
Jeśli nie tak tłumaczy to jak ten twój zakichany pyton przetłumaczy twoje zdanie z poprzedniego postu:
if mieso w lodówce then robimy kotlety else idziemy na kebab
Nijak. Po prostu wykona jedno albo drugie polecenie. Bo to nie jest wyrażenie. To że Ty nie odróżniasz wyrażenia od polecenia, to nie moja i nie Guido wina.
Cytuj:
co tu robi to „lub”?
Stoi i się irytuje Twoją wiedzoodpornością.
Cytuj:
co matematycznie oznacza
Przekształcić można różnie. Dla logiki dwuwartościowej definicja pythonowa jest równoważna tej.
Cytuj:
Nie zmienia to faktu że zdanie:
if LZ then X else Y
jest INSTRUKCJĄ postępowania, czyli odpowiednikiem program komputerowego
Zależy. W haskellu jest to wyrażenie. W C - blok instrukcji.

To gdzie można pobrać Kompusia?


Wt paź 14, 2014 10:54
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
rafal3006 napisał(a):
Jeśli nie tak tłumaczy to jak ten twój zakichany pyton przetłumaczy twoje zdanie z poprzedniego postu:
if mieso w lodówce then robimy kotlety else idziemy na kebab
Nijak. Po prostu wykona jedno albo drugie polecenie. Bo to nie jest wyrażenie. To że Ty nie odróżniasz wyrażenia od polecenia, to nie moja i nie Guido wina.

… ale kiedy wykona jedno, a kiedy drugie?
Dlaczego uważasz że dowolnej instrukcji warunkowej:
if W then A else B
nie wolno rozpisać na instrukcje cząstkowe, równoważne?
if W then A
if ~W then B
Warunki W i ~W są tu absolutnie kluczowe

zefciu napisał(a):
Cytuj:
co tu robi to „lub”?
Stoi i się irytuje Twoją wiedzoodpornością.

… czyli kwestionujesz definicję spójnika „lub”(+)?
p+q = p*q + p*~q + ~p*q
?!
zefciu napisał(a):
Cytuj:
Nie zmienia to faktu że zdanie:
if LZ then X else Y
jest INSTRUKCJĄ postępowania, czyli odpowiednikiem program komputerowego
Zależy. W haskellu jest to wyrażenie. W C - blok instrukcji.

Nie zależy absolutnie od niczego, w wyrażeniu:
if W then A else B
“Warunek W musi być zmienną np. wskaźnik CY z operacji odejmowania”

Jeśli warunek W jest stałą (np. cyfra 1 w twoim przykładzie wyżej) to nie ma żadnej instrukcji warunkowej bo nie ma rozejścia warunkowego - pozostaje matematyczny idiotyzm.

zefciu napisał(a):
To gdzie można pobrać Kompusia?

Algorytm masz w pierwszym poście tematu „Kompuś …”.
Nie zamierzam przekładać tego algorytmu na program z dwóch powodów:
1.
Jak ludzkość nie zrozumie i nie zaakceptuje algebry Kubusia to wszystko jest bez znaczenia, niech się dalej babrze w gównie typu:
Jeśli Kubuś jest Kurą to Zefciu zna się na logice
2.
Jeśli ludzie zrozumieją i zaakceptują to mutacji Kompusia powstanie tysiące

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 11:10
Zobacz profil
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
Dlaczego uważasz że dowolnej instrukcji warunkowej:
if W then A else B
nie wolno rozpisać na instrukcje cząstkowe, równoważne?
if W then A
if ~W then B

A gdzie napisałem, że nie wolno? Wskaż konkretny post, gdzie tak napisałem. Twoje wyssane z palca zarzuty męczą.

Cytuj:
… czyli kwestionujesz definicję spójnika „lub”(+)?
p+q = p*q + p*~q + ~p*q
Ta "definicja" prowadzi do nieskończonej rekurencji. Nie jest to więc definicja, a po prostu przekształcenie.
Cytuj:
Nie zależy absolutnie od niczego
Różne języki mają różną semantykę. Od razu widać, że nie napisałeś w życiu linijki działającego kodu.
Cytuj:
Algorytm masz w pierwszym poście tematu „Kompuś …”.

  1. Nie ma tam żadnego algorytmu.
  2. Nie pytałem, gdzie mam algorytm, tylko gdzie można pobrać kod.
Cytuj:
Nie zamierzam przekładać tego algorytmu na program z dwóch powodów:

Powody te są następujące
  1. Nie ma żadnego algorytmu
  2. Twoje umiejętności programowania kończą się na pralce.


Wt paź 14, 2014 11:35
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
Cytuj:
… czyli kwestionujesz definicję spójnika „lub”(+)?
p+q = p*q + p*~q + ~p*q
Ta "definicja" prowadzi do nieskończonej rekurencji. Nie jest to więc definicja, a po prostu przekształcenie.

To poproszę o dowód.
To jest definicja doskonale znana każdemu 5-cio latkowi!
Więc co ty bredzisz Zefciu?
zefciu napisał(a):
Cytuj:
Nie zależy absolutnie od niczego
Różne języki mają różną semantykę. Od razu widać, że nie napisałeś w życiu linijki działającego kodu.

Mają ale we wszystkich występuje INSTRUKCJA warunkowa:
if W then A else B
absolutnie jednoznaczna dla każdego programisty z rozwinięciem:
if W then A
if ~W then B

Na razie nie podałeś kontrprzykładu iż instrukcja warunkowa może być czymkolwiek innym niż instrukcją warunkową.

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 11:58
Zobacz profil
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
Zefciu,
Zdanie podobne do twoich tabletek.
Twierdzenie Pitagorsa:
if TP then SK else ~SK

... no i co z tego ze zbiory TP=SK są tożsame?
Czy możesz zapisać tak?
if TP then TP else ~SK
Rozwijamy:
if TP then TP
if ~TP then ~SK
?!

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 12:14
Zobacz profil
Post Re: Nowa teoria implikacji
rafal3006 napisał(a):
zefciu napisał(a):
Cytuj:
… czyli kwestionujesz definicję spójnika „lub”(+)?
p+q = p*q + p*~q + ~p*q
Ta "definicja" prowadzi do nieskończonej rekurencji. Nie jest to więc definicja, a po prostu przekształcenie.

To poproszę o dowód.

Dowód jest prosty. Po prawej stronie występuje "definiowany" operator. I nie ma żadnej możliwości, by rekurencja się zatrzymała.

No nie gadaj, że nawet pojęcie rekurencji jest Ci obce. Wiedziałem, że w życiu nie napisałeś działającej linijki kodu, ale myślałem, ze chociaż przeczytałeś jedną książkę o komputerach dla dzieci. Jednak nie.
Cytuj:
Mają ale we wszystkich występuje INSTRUKCJA
Są języki, w których występują wyłącznie wyrażenia - języki funkcyjne. To raz.

A dwa - istnienie konkretnie takiej instrukcji nie jest wymagane w turing-kompletnym języku imperatywnym. Np. w Brainfucku jej nie ma.

Cytuj:
Na razie nie podałeś kontrprzykładu iż instrukcja warunkowa może być czymkolwiek innym niż instrukcją warunkową.
Niczego takiego nie twierdziłem, więc nie wiem, czemu miałbym podawać.


Wt paź 14, 2014 12:24
Avatar użytkownika

Dołączył(a): So lut 18, 2006 20:30
Posty: 1589
Post Re: Nowa teoria implikacji
zefciu napisał(a):
Cytuj:
… czyli kwestionujesz definicję spójnika „lub”(+)?
p+q = p*q + p*~q + ~p*q
Ta "definicja" prowadzi do nieskończonej rekurencji. Nie jest to więc definicja, a po prostu przekształcenie.

To poproszę o dowód.
zefciu napisał(a):
Dowód jest prosty. Po prawej stronie występuje "definiowany" operator. I nie ma żadnej możliwości, by rekurencja się zatrzymała.

No nie gadaj, że nawet pojęcie rekurencji jest Ci obce. Wiedziałem, że w życiu nie napisałeś działającej linijki kodu, ale myślałem, ze chociaż przeczytałeś jedną książkę o komputerach dla dzieci. Jednak nie.

Oj, zefciu zefciu, to równanie to po prostu zapis tabeli zero-jedynkowej operatora OR w równaniu algebry Boole'a - jak sie to robi odsyłam tu:
http://www.sfinia.fora.pl/forum-kubusia ... tml#215122
Jesli kwestionujesz ta definicję:
p+q = p*q + ~p*q + p*~q
to tym samym kwestionujesz tabelę zero-jedynkowa operatora OR

zefciu napisał(a):
Cytuj:
Mają ale we wszystkich występuje INSTRUKCJA
Są języki, w których występują wyłącznie wyrażenia - języki funkcyjne. To raz.

A dwa - istnienie konkretnie takiej instrukcji nie jest wymagane w turing-kompletnym języku imperatywnym. Np. w Brainfucku jej nie ma.

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ś.
zefciu napisał(a):
Cytuj:
Na razie nie podałeś kontrprzykładu iż instrukcja warunkowa może być czymkolwiek innym niż instrukcją warunkową.
Niczego takiego nie twierdziłem, więc nie wiem, czemu miałbym podawać.

... a kto twierdził wyżej że zapis:
if p then p else q
jest operatorem OR?
Poproszę o przykład takiego "operatora" OR.
A.
Jutro pójdę do kina lub do teatru
Y=K+T
Na mocy definicji spójnika lub (+) rozwijamy:
Y = K*T + ~K*T + K*~T
To są wszystkie przypadki w których w przyszłości dotrzymam słowa.
... a kiedy skłamię?
Przejście do logiki ujemnej poprzez negację zmiennych i wymiane spójników
~Y=~K*~T
Skłamię (~Y=1) wtedy i tylko wtedy gdy jutro nie pójdę do kina (~K=1) i nie pójdę do teatru (~T=1)
~Y=~K*~T
Oba zdania razem (Y, ~Y) to kompletny operator OR!
Czemu nie rozumiesz definicji spójnika "lub"(+) odczytanej bezpośrednio z tabeli zero-jedynkowej?
Twoja niewiedza jest porażająca Zefciu, może idź do przedszkola, bo dzieci doskonale znają definijcę spójnika "lub"(+) zapisaną w równaniu algebry Boole'a.

Czy to jest dla twórców pythona niepojęte?
Za bardzo skomplikowane i muszą "uprościć" do postaci:
Jeśli jutro pójdę do kina to pójdę do kina inaczej to teatru
?!

_________________
Algebra Kubusia - nowa teoria zbiorów


Wt paź 14, 2014 12:47
Zobacz profil
Wyświetl posty nie starsze niż:  Sortuj wg  
Ten wątek jest zablokowany. Nie możesz w nim pisać ani edytować postów.   [ Posty: 540 ]  Przejdź na stronę Poprzednia strona  1 ... 23, 24, 25, 26, 27, 28, 29 ... 36  Następna strona

Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by Vjacheslav Trushkin for Free Forums/DivisionCore.
Przyjazne użytkownikom polskie wsparcie phpBB3 - phpBB3.PL