Вопросы с тегом «c»

73
Почему сложение происходит так же быстро, как побитовые операции в современных процессорах?

Я знаю, что побитовые операции выполняются очень быстро на современных процессорах, потому что они могут работать на 32 или 64 битах параллельно, поэтому побитовые операции занимают только один такт. Однако сложение - это сложная операция, которая состоит как минимум из одной и, возможно, до дюжины...

68
Что такое коиндукция?

Я слышал о (структурной) индукции. Это позволяет вам строить конечные структуры из более мелких и дает вам доказательные принципы для рассуждений о таких структурах. Идея достаточно ясна. Но как насчет коиндукции? Как это работает? Как можно сказать что-либо убедительное о бесконечной структуре?...

44
Как комбинатор Y иллюстрирует «несоответствие лямбда-исчисления»?

На странице Википедии для комбинаторов с фиксированной точкой написан довольно загадочный текст Y комбинатор является примером того, что делает лямбда-исчисление непоследовательным. Поэтому к этому следует относиться с подозрением. Однако комбинатор Y можно считать безопасным, если он определен...

44
Автоматизированное доказательство теорем

Я сам изучаю Автоматизированное доказательство теорем / SMT-решатели / Помощники по проверке и выкладываю серию вопросов о процессе, начинающемся здесь. Обратите внимание, что эти темы нелегко усваиваются без знания (математической) логики. Если у вас есть проблемы с основными терминами,...

40
Является ли C на самом деле полным по Тьюрингу?

Я пытался объяснить кому-то, что C завершена по Тьюрингу, и понял, что на самом деле не знаю, действительно ли он технически завершен по Тьюрингу. (C как в абстрактной семантике, а не как в реальной реализации.) «Очевидный» ответ (грубо говоря: он может адресовать произвольный объем памяти, поэтому...

38
Факторный алгоритм более эффективен, чем наивное умножение

Я знаю, как кодировать для факториалов, используя итеративные и рекурсивные (например, n * factorial(n-1)например). Я прочитал в учебнике (без каких-либо дальнейших объяснений), что существует еще более эффективный способ кодирования для факториалов, разделив их пополам рекурсивно. Я понимаю,...

36
Что именно является логикой?

Возможно, извинения за то, что я задал еще один вопрос о предпосылках, но я был озадачен начальными моментами. Я встречал различные термины, такие как «модальная логика», «временная логика», «логика первого порядка», «логика второго порядка» и «логика высшего порядка». Что именно означает «логика»...

36
Математика позади преобразования из любой базы в любую базу без прохождения базы 10?

Я искал математику за преобразование из любой базы в любую базу. Это больше о подтверждении моих результатов, чем о чем-либо. Я нашел то, что кажется моим ответом на mathforum.org, но я все еще не уверен, правильно ли я это понял. У меня есть преобразование из большей базы в меньшую базу, хорошо,...

29
Характеристика лямбда-терминов, которые имеют типы объединения

Многие учебники охватывают типы пересечений в лямбда-исчислении. Правила набора для пересечения могут быть определены следующим образом (поверх простого типа лямбда-исчисления с подтипами): Γ ⊢ M: T1Γ ⊢ M: T2Γ ⊢ M: T1∧ T2( ∧ я)Γ ⊢ M: ⊤( ⊤ я)Γ⊢M:T1Γ⊢M:T2Γ⊢M:T1∧T2(∧I)Γ⊢M:⊤(⊤I) \dfrac{\Gamma \vdash M...

28
Генерация комбинаций из набора пар без повторения элементов

У меня есть набор пар. Каждая пара имеет форму (x, y), так что x, y принадлежат целым числам из диапазона [0,n). Итак, если n равно 4, то у меня есть следующие пары: (0,1) (0,2) (0,3) (1,2) (1,3) (2,3) У меня уже есть пары. Теперь я должен построить комбинацию, используя n/2пары, чтобы ни одно из...

28
Понятный, интуитивно понятный вывод комбинатора с фиксированной точкой (Y комбинатор)?

Комбинатор FIX с фиксированной запятой (он же Y-комбинатор) в (нетипизированном) лямбда-исчислении ( λλ\lambda ) определяется как: FIX ≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))\triangleq \lambda f.(\lambda x. f~(\lambda y. x~x~y))~(\lambda x. f~(\lambda y....

28
Почему пустой тип C не аналогичен пустому / нижнему типу?

Википедия, а также другие источники, которые я обнаружил в списке voidтипа C как тип единицы, а не пустой тип. Мне кажется, что это сбивает с толку, так как мне кажется, что оно voidлучше подходит под определение пустого / нижнего типа voidНасколько я могу судить, ценности не обитают . Функция с...

26
Что наиболее эффективно для GCD?

Я знаю, что алгоритм Евклида - лучший алгоритм для получения GCD (большой общий делитель) списка натуральных чисел. Но на практике вы можете кодировать этот алгоритм различными способами. (В моем случае я решил использовать Java, но C / C ++ может быть другим вариантом). Мне нужно использовать...

26
Есть ли типизированное исчисление SKI?

Большинство из нас знает соответствие между комбинаторной логикой и лямбда-исчислением . Но я никогда не видел (может быть, я недостаточно глубоко изучил) эквивалент «типизированных комбинаторов», соответствующих простейшему типу лямбда-исчисления. Существует ли такая вещь? Где можно найти...

24
Существуют ли неразрешимые языки в конструктивистской логике?

Конструктивистская логика - это система, которая исключает Закон Исключенной Среды, а также Двойное Отрицание как аксиомы. Это описано в Википедии здесь и здесь . В частности, система не допускает доказательств от противного. Мне интересно, кто-нибудь знаком с тем, как это влияет на результаты,...

24
Почему A подразумевает B истинно, если A ложно, а B ложно?

Мне кажется, что «подразумевает» в английском языке не означает то же самое, что «подразумевает» логический оператор, подобно тому, как слово «ИЛИ» в большинстве случаев означает «исключающее ИЛИ» в нашем повседневном использовании языка. Давайте возьмем два примера: Если сегодня понедельник, то...

23
калькуляция с отражением

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

22
Почему

Я хотел бы знать, есть ли правило, чтобы доказать это. Например, если я использую закон распределения, я получу только ( A ∨ A ) ∧ ( A ∨ ¬ B )(A∨A)∧(A∨¬B)(A \lor A) \land (A \lor \neg B)...

21
Сходства и различия в основных алгебрах процессов

Насколько мне известно, есть три основных алгебры процессов, которые вдохновили широкий спектр исследований формальных моделей параллелизма. Эти: CCS и калькуляция Робин Милнерππ\pi CSP Тони Хоаром и ACP Ян Бергстра и Ян Виллем Клоп Все трое, по-видимому, по сей день ведут довольно активную работу,...