Таблица истинности

Аватар пользователя bulygin69
Систематизация и связи
Логика

Поскольку 
(А & А) = True
(А = А) = True
то
(А & А) = (А = А)

Поскольку 
(А & не-А) = False
(А = не-А) = False
то
(А & не-А) = (А = не-А)

Это верно для всех А, кроме самого False
(False & не-False) = False
(False = не-False) = False
поскольку
1) False = False
2) но (False = не-False) когда формулируется оно само:
False = (False = не-False)

http://hostingkartinok.com/show-image.php?id=4be33ae4c3db5b9314d1fc7549c128fa

Комментарии

Аватар пользователя philozan

Это верно для всех А, кроме самого False
(False & не-False) = False
(False = не-False) = False
поскольку
1) False = False
2) но (False = не-False) когда формулируется оно само:
False = (False = не-False)

Все подобные фокусы, в том числе известный "парадокс лжеца", основаны на нарушении принципиального требования логики, гласящего, что нет абстрактной истины - истина всегда конкретна!

В самом деле, из того, что 5 =/=-5 и 3 =/=-3 вовсе не следует, что эти неравенства равны друг другу!!!

Аватар пользователя bulygin69

из того, что 5 =/=-5 и 3 =/=-3 вовсе не следует, что эти неравенства равны друг другу!!!

Именно так: (5 не-равно -5) = (3 не-равно -3), поскольку это вырождается в True=True.

Все языки программирования трактуют эти формулы именно так и никак иначе.

 

Аватар пользователя mp_gratchev

Это верно для всех А, в том числе, и для самого False
(False & не-False) = False
(False = не-False) = False
поскольку
1) Истинно, что (False = False)
2) Ложно, что (False = не-False) , или
False = (False = не-False)

--

Аватар пользователя bulygin69

Это верно для всех А, в том числе, и для самого False

(А & А) = True
(А = А) = True

Если вы приравняете (А & А) = (А = А), где А есть False, то получите не-равно

(False & False) не-равно (False = False), поскольку (False & False) = False, (False = False) = True ... (смотрите таблицу истинности)

Аватар пользователя mp_gratchev

bulygin69, 12 Январь, 2017 - 16:39, ссылка

поскольку (False & False) = False               (1)

(False = False) = True                               (2)

 

Неверно. См. табл. истинности:

конъюнкия

поскольку:

((False = False) & (False = False)) = True            (3)

строка 4:

1  &  1  = 1                                                     (4)

--

Аватар пользователя bulygin69

12 Январь, 2017 - 16:39, ссылка

поскольку (False & False) = False               (1)

(False = False) = True    

В первой строчке таблицы  (False & False) = False. Вы же пишите, что это неверно.

 

Аватар пользователя mp_gratchev

bulygin69, 13 Январь, 2017 - 03:42, ссылка

поскольку

(False & False) = False               (1)

(False = False) = True                (2)

Речь касалась контрпримера, где конъюнкция False дает True, а именно:

поскольку:

((False = False) & (False = False)) = True            (3)

строка 4:

1  &  1  = 1                                                     (4)

Вот сей факт и следовало пояснить.

--

Аватар пользователя bulygin69

сей факт и следовало пояснить.

 Все верно. ((False = False) & (False = False)) = True  

Но противоречие в другом. C одной стороны, (False = False)) = True. С другой стороны, (False  False)) = False

Так ложь равна лжи? Или ложь не равна лжи? ... Ложь как равна лжи, так и не равна лжи. Чтобы избежать противоречия (из ложной формулы следует как ложь, так и истина согласно ИМПЛИКАЦИИ), свойства ложной формулы разнесены по разным операциям (эквиваленция, логическое И) 

Посмотрите на их разницу: они различны только по отношению к False.

Аватар пользователя mp_gratchev

bulygin69, 13 Январь, 2017 - 09:16, ссылка

Посмотрите на их разницу: они различны только по отношению к False.

philozan (12 Январь, 2017 - 09:04, ссылка) сразу указал на парадокс лжеца. К сожалению, эту причину Вы оставили без внимания и не ответили на вопрос, что такого в False, что начинается чехарда с истинностными оценками?

--

Аватар пользователя bulygin69

 К сожалению, эту причину Вы оставили без внимания 

Потому что надо выражать формулами, а не словесно.

Имеем ложную формулу (А = не-А). Но сохранить смысл ложной формулы можно только в том смысле, если левая часть равенства (А) и правая часть равенства (не-А) должны быть равны себе, т.е. чтобы сказать (А = не-А) необходимо также сказать (А = А), (не-А = не-А). 

Аватар пользователя bulygin69

Это верно для всех А, в том числе, и для самого False

(Логическое И = логическое эквивалентно) за исключением False. Другими словами:

False равно False, если речь идет об эквиваленции

False не-равно False, если речь идет о логическом И

Аватар пользователя Спокус Халепний

Поскольку 
(А & А) = True
(А = А) = True
то
(А & А) = (А = А)

Из какой области вы набрали эти знаки: '&', '=', 'True' ???

Вопрос ведь у меня совсем детский - на уровне самых начальных аксиом. Вот, к примеру, если знак '&' означает "логическое И" из булевой алгебры, то строчкой ниже знак '=' в выражении (А = А) тоже вроде бы должен означать некую булеву операцию. Интересно, какую?

Кроме того, неужели знак '=' употреблённый в одной и той же строке два раза означает одно и то же?

Впрочем, можно обойтись только первой строкой, если под знаком '&' вы действительно имели в виду "логическое И". Дело в том, что при значении А равным булевому False, мы получим в результате "логического И"  не True, а False. Хотя и тут вы можете оказаться правы, если вы под True имели в виду нечто совсем другое, нежели альтернативу False.

И вот так в каждой строчке... Так сказать: в каждой строчке только точки после буквы "л"...

Аватар пользователя bulygin69

Из какой области вы набрали эти знаки: '&', '=', 'True' ???

(& ... это логическое И) (= ...это равно), (true ... это истина).

 О ложности и истинности формул (по Успенскому): (А=А) формула истинна, (А=не-А) формула ложна.

Но тогда [А & не-А = False], [(А = не-А) = False]

Ликбез: http://pythonicway.com/python-operators 

5 == 5 в результате будет True
True == False в результате будет False
"hello" == "hello" в результате будет True

12 != 5 в результате будет True
False != False в результате будет False
"hi" != "Hi" в результате будет True

И т.д. 

Аватар пользователя Спокус Халепний

Ого, вы сразу включили установку "Град".

Был знак '=' а тут сразу добавился знак '=='. Вы хотите сказать, что вам не жалко - можно и тройное равно.

Я никогда не программировал на языке Python, но уверен, что там всё довольно логично построено. Не намного хуже/лучше, чем во многих других языках программирования.

Так что же вы хотите сказать - ваши записи это кусочки из некой программы на языке Python? А я - поц последний - сразу не догнал (в то время как вся туташняя философская общественность моментально всё поняла и схавала). При том, что особо интересно, так это то, что вырезанные автогеном кусочки из программы, не представляют собой каких-либо законченных строк-операторов (фрагментов программы), а являются некими обрывками неких строк.

Короче, старые вопросы остаются. Знак '=' во второй строке у вас употреблён два раза. Он означает одно и то же?

Аватар пользователя bulygin69

1) знак "=="  это "равно" в Python

2) Не имеет значения, какие языки используются. Вот пример из ассемблера Логика та же: (А = А) формула истинна, (А = не-А) формула ложна

Таблица 1. Операторы сравнения
Оператор    Значение
eq    ИСТИНА, если выражение_1 равно выражение_2
ne    ИСТИНА, если выражение_1 не равно выражение_2

здесь eq - эквивалентно, ne  - не-экививалентно (поэтому вернет False для А=не-А)

3) В этих формулах сами А являются формулами. Поэтому (А & не-А = False), где А, например, есть ложь ... читается как: ложная формула & не-ложная формула - то же самое, что ложь.

Аватар пользователя vlopuhin

2) Не имеет значения, какие языки используются.

Сомнительное утверждение. Писатели на Delphi не охотно переходят на С, и наоборот, как раз из-за этого "=".

Аватар пользователя bulygin69

Cсылка  Оператор выбора if в языке C

Истинное значение (ИСТИНА) имеет значение отличное от нуля, ЛОЖЬ эквивалентна нулю. При использовании операторов сравнения, оператор будет возвращать единицу, если выражение сравнения — истинно, или — 0, если условное выражение ложно. Например, выражение 3 == 2 вернет значение 0, так как три не равно двум. Выражение 5 == 5 оценивается как истинное и вернет значение 1. Если вам сложно это понять, попробуйте сделать вывод на экран этих выражений, например:  printf ( "%d", 7 == 0 );

Оттуда же: 5 == 5 это истина,  3 != 2 и это истина

Аватар пользователя vlopuhin

Да понятно, просто А=А читается как А присвоить А, соответственно оператор А=-А тоже вернёт истину.

Аватар пользователя philozan

(А & не-А) = (А = не-А)

Это верно для всех А, кроме самого False
(False & не-False) = False
(False = не-False) = False

Здесь понятие False используется в разных смыслах. В левой части "равенства" False используется в значении А /определенной величины или определенного высказывания/, а в правой части - в значении истинностной оценки всей левой части!

Все подобные фокусы основаны на какой-нибудь подтасовке.

Аватар пользователя vlopuhin

То есть истинность содержания и истинность оценки, это разные вещи? Но как их позиционировать? И вот тут, как мне кажется открывается простор, который в булеву математику не втискивается. Другими словами, всё программирование заканчивается на компиляторе.

Аватар пользователя bulygin69

Что есть ложь? Ложная формула: (A = не-А) = False или (A ≠ А) = False
Иначе говоря, False - то же самое, что 
равенство неравных термов, равенство неравных формул
или
неравенство равных термов, неравенство равных формул

False равна False? Равна, т.е (False = False) = True.
C другой стороны, если подставить False в (A ≠ А),
то получим: (False ≠ False)

Так ложь равна лжи или ложь не-равна лжи?
Чтобы делать истинные выводы относительно False, свойства ложных формул
были разнесены по разным операциям
(эквиваленция, логическое И)