Возможный корректный перевод:
«Оператор using получает один или несколько ресурсов, выполняет заданный оператор языка и затем дает распоряжение освободить ресурсы (вызывая метод Dispose)»
Переменная и объект — это две разные сущности. Несколько переменных могут ссылаться на один объект, одна переменная может ссылаться на разные объекты (в разные моменты времени).
Переменная — это ссылка на объект, размещается в стеке.
Объект — это область памяти, хранящая данные объекта. Размещается в хипе.
В документации опечатка. Вместо слова 'object' подразумевается слово 'variable'.
Соответственно: переменная, объявленная в using, не может быть переприсвоена. На сам объект никаких ограничений не накладывается.
1. Выделите, пожалуйста, жирным словосочетание «Булева логика» в приведенной вами цитате. Сам я это сделать не смог из-за такового отсутствия.
2. Плохая ссылка. По ней смешивается логическое сложение с арифметическим сложением. Это не одно и тоже.
Корректная таблица истинности для Логического ИЛИ есть в статье «Троичная логика» на вики. ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%BE%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0
1. Указанные ссылки описывают: или «Булеву алгебру», или «Двоичную логику». Ранее вы утверждали, что «Булева логика» не является «Булевой алгеброй» и не является «Двоичной логикой».
a) Зачем вы на просьбу дать ссылку на определение «Булевой логики» приводите ссылки на то, чем она по вашему не является?
b) Дайте, пожалуйста, ссылку, которая подтверждает вашу точку зрения, что «Булева логика» не является «Булевой алгеброй».
2a. Логическое сложение — это дизъюнкция (or). Логическое сложение имеет другую семантику, чем арифметическое сложение. Логическое сложение в троичной логике без использования состояния '0' изоморфно логическому сложению из двоичной логики.
'+' or '+' => '+'; '+' or '-' => '+'; '-' or '+' => '+'; '-' or '-' => '-'
3. a or not a => '+'
'+' or not '+' => '+' or '-' => '+'
'-' or not '-' => '-' or '+' => '+'
1. Либо давайте ссылку, либо это означает что такого определения нет.
2.a. Операция '+' не является логической операцией.
2.b. Операция импликации в логиках Клини и Присти без учета троичного 0-го состояния изоморфна операции импликации из двоичной логики.
'+' -> '+' => '+', '-' -> '+' => '+', '+' -> '-' => '-', '-' -> '-' => '+'
1. Если 'Булева логика' != 'Двоичная логика', то каким определением 'Булевой логики' вы пользуетесь? Приведите, пожалуйста, определение и его источник.
2. В троичной логике операция инверсии: not('+') => '-', not('-') => '+', not('0') => '0', в двоичной логике:not('0') => '1', not('1') => '0'. Если в троичной логике отказаться от состояния '0', то она становится изоморфной двоичной логике, где '+' из троичной логики соответствует '1' из двоичной, а '-' из троичной соответствует '0' из двоичной.
Соответственно, реализация двоичной логики поверх троичной логики не требует костылей, достаточно не использовать состояние '0' на входе.
Я запутался.
В сообщении 5.01.16 20:20 я пишу о «Булевой логике»,
ваше ответное сообщение 6.01.16 12:31 о «Булевой алгебре» и цитата с вики о «Булевой алгебре»,
в сообщении 6.01.16 17:24 я пишу о «Булевой алгебре» и цитату с вики о «Булевой алгебре»,
вы в ответном сообщении 11.01.16 13:33 отказываетесь принимать ответ, аппелируя к тому, что «Булева логика» и «Булева алгебра» — это не одно и тоже.
Вопросы:
1. Если вы считаете, что «Булева алгебра» и «Булева логика» не одно и тоже, то зачем на утверждение про «Булеву логику» вы отвечали контр-утверждением про «Булеву алгебру»?
2. Почему вы отказались принимать моё контр-утверждение 6.01.16 17:24 на основе «Булевой алгебры», подтвержденное цитатой из вики? Почему вы апеллируете к тому, что «Булева алгебра» и «Булева логика» не одно и тоже, если до этого вы писали о «Булевой алгебре» и приводили цитату из неё же, а я вам отвечал также о «Булевой алгебре» и цитатой о «Булевой алгебре»?
1. Нет необходимости делать такую проверку, потому что если схема реализует булеву алгебру и использует корректный вход (только состояния '+', '-'), то на выходе тоже всегда будет только корректный выход(только состояния '+', '-').
2. «Булева алгебра» и «Булева логика» — это два разных рассмотрения одного и того же. Булева алгебра — это изучение математического аппарата для множеств, состоящих из элементов с двумя состояниями. Булева логика — это изучение высказываний, которые могут принимать только два состояния. В некотором смысле «булева логика» является подмножеством «булевой алгебры».
Если взять множество тритов и оставить в каждом трите только два состояния '+' и '-' и над этими состояниями определить те же операции, что и в булевой алгебре, то в чем такое множество не будет изоморфно множеству A из определения булевой алгебры?
Булевой алгеброй называется непустое множество A с двумя бинарными операциями \land (аналог конъюнкции), \lor (аналог дизъюнкции), унарной операцией \lnot (аналог отрицания) и двумя выделенными элементами: 0 (или Ложь) и 1 (или Истина) такими, что для всех a, b и c из множества A верны следующие аксиомы [..].
Булева логика — это когда на входе и на выходе только два состояния. Логика с двумя состояниями тривиально реализуется на тритах: одно из состояний не используется.
1. В классической двоичной архитектуре используется два представления чисел: знаковое и беззнаковое. В представленной троичной: одно представление — знаковое.
3. Одно представление — одна операция сдвига влево и одна вправо.
4. Операция 'знак числа' возвращает '+', '-' или '0'. Реализация операции 'знак числа' получается сложнее, необходимо найти старший ненулевой трит.
5. Отбрасывание младших разрядов эквивалентно операции 'округление к ближайщему «целому»'. Это связано с со свойством представленного троичного кодирования: младшие разряды кодируют часть числа, которая всегда меньше половины числа закодированного старшим разрядом.
6. Каждая операция округления «добавляет» случайно распределенную ошибку от -0.5 до 0.5. У троичных чисел мат. ожидание этого распределения равна 0.
Речь тогда идет об отсутствии в мире реальной параллельности событий. В один момент времени передвигается только одна элементарная частица мира. Соответственно, если в движении участвует K частиц, то это займет K временных квантов.
Из дискретности времени не следует, что отсутствует одновременность действий. На гингве невозможно записать, что два действия совершаются в один и тот же момент времени Ti.
Как без понятия «одновременности» записать утверждения: «солдаты шли в ногу», «при движении нерастяжимого предмета, левый край начинает двигаться одновременно с правым»?
«Оператор using получает один или несколько ресурсов, выполняет заданный оператор языка и затем дает распоряжение освободить ресурсы (вызывая метод Dispose)»
Переменная — это ссылка на объект, размещается в стеке.
Объект — это область памяти, хранящая данные объекта. Размещается в хипе.
ps
За скобкам оставлен вариант с value-типами.
Соответственно: переменная, объявленная в using, не может быть переприсвоена. На сам объект никаких ограничений не накладывается.
2. Плохая ссылка. По ней смешивается логическое сложение с арифметическим сложением. Это не одно и тоже.
Корректная таблица истинности для Логического ИЛИ есть в статье «Троичная логика» на вики.
ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%BE%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0
a) Зачем вы на просьбу дать ссылку на определение «Булевой логики» приводите ссылки на то, чем она по вашему не является?
b) Дайте, пожалуйста, ссылку, которая подтверждает вашу точку зрения, что «Булева логика» не является «Булевой алгеброй».
2a. Логическое сложение — это дизъюнкция (or). Логическое сложение имеет другую семантику, чем арифметическое сложение. Логическое сложение в троичной логике без использования состояния '0' изоморфно логическому сложению из двоичной логики.
'+' or '+' => '+'; '+' or '-' => '+'; '-' or '+' => '+'; '-' or '-' => '-'
3. a or not a => '+'
'+' or not '+' => '+' or '-' => '+'
'-' or not '-' => '-' or '+' => '+'
2.a. Операция '+' не является логической операцией.
2.b. Операция импликации в логиках Клини и Присти без учета троичного 0-го состояния изоморфна операции импликации из двоичной логики.
'+' -> '+' => '+', '-' -> '+' => '+', '+' -> '-' => '-', '-' -> '-' => '+'
2. В троичной логике операция инверсии: not('+') => '-', not('-') => '+', not('0') => '0', в двоичной логике:not('0') => '1', not('1') => '0'. Если в троичной логике отказаться от состояния '0', то она становится изоморфной двоичной логике, где '+' из троичной логики соответствует '1' из двоичной, а '-' из троичной соответствует '0' из двоичной.
Соответственно, реализация двоичной логики поверх троичной логики не требует костылей, достаточно не использовать состояние '0' на входе.
В сообщении 5.01.16 20:20 я пишу о «Булевой логике»,
ваше ответное сообщение 6.01.16 12:31 о «Булевой алгебре» и цитата с вики о «Булевой алгебре»,
в сообщении 6.01.16 17:24 я пишу о «Булевой алгебре» и цитату с вики о «Булевой алгебре»,
вы в ответном сообщении 11.01.16 13:33 отказываетесь принимать ответ, аппелируя к тому, что «Булева логика» и «Булева алгебра» — это не одно и тоже.
Вопросы:
1. Если вы считаете, что «Булева алгебра» и «Булева логика» не одно и тоже, то зачем на утверждение про «Булеву логику» вы отвечали контр-утверждением про «Булеву алгебру»?
2. Почему вы отказались принимать моё контр-утверждение 6.01.16 17:24 на основе «Булевой алгебры», подтвержденное цитатой из вики? Почему вы апеллируете к тому, что «Булева алгебра» и «Булева логика» не одно и тоже, если до этого вы писали о «Булевой алгебре» и приводили цитату из неё же, а я вам отвечал также о «Булевой алгебре» и цитатой о «Булевой алгебре»?
2. «Булева алгебра» и «Булева логика» — это два разных рассмотрения одного и того же. Булева алгебра — это изучение математического аппарата для множеств, состоящих из элементов с двумя состояниями. Булева логика — это изучение высказываний, которые могут принимать только два состояния. В некотором смысле «булева логика» является подмножеством «булевой алгебры».
3. Одно представление — одна операция сдвига влево и одна вправо.
4. Операция 'знак числа' возвращает '+', '-' или '0'. Реализация операции 'знак числа' получается сложнее, необходимо найти старший ненулевой трит.
5. Отбрасывание младших разрядов эквивалентно операции 'округление к ближайщему «целому»'. Это связано с со свойством представленного троичного кодирования: младшие разряды кодируют часть числа, которая всегда меньше половины числа закодированного старшим разрядом.
6. Каждая операция округления «добавляет» случайно распределенную ошибку от -0.5 до 0.5. У троичных чисел мат. ожидание этого распределения равна 0.