Есть две такие стрелочки, → и ⇒ , импликация и следствие. В курсах логики подчеркивается, что это РАЗНОЕ, но я почему-то всё время пропускал, чем же они связаны.
Пусть есть предикаты P и Q, зависящие от какого-то x. Например, ЧЕЛОВЕК(x), СМЕРТЕН(x), СОКРАТ(x). Тогда то, что из P(x) следует Q(x) записывается через импликацию так: ∀x: P(x)→Q(x)
Для импликации дают запоминать вот такую таблицу: 0→0 = 1 0→1 = 1 1→0 = 0 1→1 = 1 Можно запомнить так: (x→y) эквивалентно (x ≤ y). Отсюда сразу видна транзитивность импликации, так как операция (≤) транзитивна.
Задачка для школьников (решается на листочке бумаги, или в уме, если легко складываете двузначные числа): ( Collapse )
В отличие от самолёта, на улице я вижу, что вокруг, и контролирую куда я направляюсь. Поэтому могу избежать аварии. А в самолете я ни на что не влияю, и поэтому на них страшно летать.
Под катом - гифки с дорожными проишествиями, с жертвами. Надеюсь, они помогут кому-нибудь избежать аэрофобии :)
Поверили? Справочники и английская вики - надёжный источник? На название романа я не ссылаюсь, это художественная литература. А вот справочники и википедия врать не должны.
Update: у меня духовка греет только до 250°C (правда, не знаю как это проверить). У кого-нибудь есть, которая греет сильней чем 250, но заведомо меньше 400?
Вот храним мы в переменной целое число. Иногда нам надо хранить не число, а факт того, что числа вообще нет. Например, функция пересечения двух линий хочет сообщить что нет точки пересечения вообще. Часто для этой цели используют "особые" значения которые вроде как бессмысленные. Например, -1 для int, или пустая строка для std::string.
Иногда делают баги, и забывают написать if на проверку бессмысленности значения. "Бессмысленное" значение вырывается в мир, и начинает участвовать в арифметических операциях или становится "особым" значением уже в другом месте.
Для того что бы явно записать факт "иногда тут ничего нет" используется обёртка над типом, внутри которой хранится булевский флажок. В boost есть тип boost::optional<T>. В Haskell есть Maybe T. В C# есть Nullable (для встроенных типов).
Хороший пример, почему лучше иметь тип в котором особое состояние "нету никакого int вообще": cначала человек получает -1 из системной функции типа getpid, а затем эта -1 попадает в killall. Смерть, разрушения, мертвый мак.
Если кто-то сможет помочь переписать с учетом strict aliasing - буду благодарен. Как с учетом strict aliasing вообще разместить объект типа T в массиве char[sizeof(T)] ? Русские коментарии на английские переведу сам, если вдруг окажется что штука нужная и нравится людям больше чем boost::optional :)
Таблички "порошок / уходи" логичней заменить на "уходи! / пожар" или "уходи! / опасность". Не выглядит, как смешная шутка, как будто мы просим что-то у порошка. Пожар - более понятная причина, почему здесь опасно, не нужно строить логическую цепочку "порошок из системы пожаротушения вызывает удушье и снижает видимость".
Корреспондент «Новой газеты» в своей статье заявлял, что этот оповещатель используется в ночных клубах, как сигнал появления наркополицейских ( Collapse )
в 7 отдел полиции на метрополитене пришли два человека из ОСБ якобы для устройства на работу. С собой у них был черный пакет, которые они оставили в фойе, перед тем как покинуть здание.
В этом пакете находился муляж - кусок хозяйственного мыла с привязанным к нему сотовым телефоном. Однако, когда сотрудники ОСБ приехали в 7 отдел с проверкой, муляжа они не обнаружили - его кто-то украл.
Когда я ищу в гугло-яндексах ответ на какой-то вопрос, я стараюсь его задавать так, что бы в нем не было ответа. Потому что в интернете уже есть все варианты ответов, как правильные так и нет. Например, сегодня пытался узнать, травы "базилик" и "орегано" - разные травы или нет. Первое желание обычно у людей - набрать "базилик орегано". Если утрировано, если набрать "курица лев", то есть шанс наткнуться на страничку сумасшедшего, где он утверждает что курица и лев это одно и то же. Особенно это касается политических и исторических споров, где можно найти утверждения от того что второй мировой не было, до того что в ней погибло 20 миллиардов человек.