Информатика

10
Ежедневные применения теории типов

Я хочу понять теорию типов, но сначала я должен знать, как ее применять. Могут ли быть более неочевидные применения теории типов помимо систем типов в программировании? Могут ли быть другие приложения, скажем, в профилировании личности и тому...

10
Делают ли Self Types исчисление индуктивных конструкций устаревшим?

Self Types - это расширение исчисления конструкций [1], которое позволяет языку выражать алгебраические типы данных, закодированные с помощью кодировки Скотта. Кодирование Скотта предоставляет возможность сопоставления с образцом O(1), что является одним из основных мотиваторов для включения...

10
Почему (без столкновений) хеш-таблица поиска действительно O (1)?

Отказ от ответственности: я знаю, что есть похожие вопросы уже здесь и на Stackoverflow. Но они все о столкновениях, о которых я не прошу. Мой вопрос: почему столкновительный меньше LookUp O(1)в первую очередь? Давайте предположим, что у меня есть эта хеш-таблица: Hash Content ------------- ghdjg...

10
Разрешаема ли проблема остановки для трехмерных одномерных клеточных автоматов?

Я пытался выяснить, разрешима ли проблема остановки для трехмерных одномерных клеточных автоматов. Определение Пусть обозначает конфигурацию системы на временном шаге i . Более формально f : A ∗ × N → A ∗ , где A - алфавит.е( ш , я )f(w,i)f(w,i)яiif:A∗×N→A∗f:A∗×N→A∗f:A^*\times \mathbb{N} \to A^*AAA...

10
Существует ли известный метод построения грамматики по конечному набору конечных строк?

Из моего чтения кажется, что большинство грамматик занимается созданием бесконечного числа строк. Что делать, если вы работали наоборот? Если задано n строк длиной m, должна быть возможность создать грамматику, которая будет генерировать эти строки и только эти строки. Есть ли известный способ...

10
Реализация Наивного Байеса

Я реализую Наивный алгоритм Байеса для категоризации текста с лапласовским сглаживанием. У меня проблема в том, что вероятность приближается к нулю, потому что я умножаю много маленьких дробей. Следовательно, вероятность в конечном итоге дает ноль. Это потому, что в документах и ​​учебных наборах...

10
Какова вероятность того, что этот код заканчивается?

Я написал этот код на Python и подумал, а может ли он просто не завершиться (при условии, что у нас было бесконечное количество памяти / времени и нет предела глубины рекурсии). Интуитивно вы думаете, что он заканчивается, поскольку в какой-то момент вам повезет , а если он не закончится, у вас...

10
Строгая позитивность

Из этой ссылки: Строгий позитив Строгое условие позитивности исключает такие объявления, как data Bad : Set where bad : (Bad → Bad) → Bad A B C -- A is in a negative position, B and C are OK Почему А отрицательный? Также почему Б разрешено? Я понимаю, почему C...

10
Существует ли парадигма для составления функций «инкрементного обновления» в стиле чистого потока данных?

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

10
Каковы общие формальные методы для проверки правильности функционального кода?

Я хочу предоставить доказательства для частей программы на Haskell, которую я пишу, как часть моей диссертации. Однако до сих пор мне не удалось найти хорошую справочную работу. Вступительная книга Грэма Хаттона « Программирование на Haskell» ( Google Books ), которую я читаю, изучая Haskell,...

10
Пытаясь понять это быстрое доказательство правильности

Это доказательство является доказательством по индукции и состоит в следующем: P (n) - это утверждение, что «Быстрая сортировка правильно сортирует каждый входной массив длины n». Базовый случай: каждый входной массив длины 1 уже отсортирован (P (1) выполняется) Шаг индукции: fix n => 2....

10
Интуиция за воротами Адамара

Я пытаюсь научить себя квантовым вычислениям, и у меня есть приличное понимание линейной алгебры. Я прошел через ворота НЕ, что было не так уж плохо, но затем я добрался до ворот Адамара. И я застрял. Главным образом потому, что, хотя я «понимаю» манипуляции, я не понимаю, что они на самом деле...

10
Анализ сложности алгоритма на реализациях функционального языка программирования

Сегодня я узнал, что алгоритм анализа отличается в зависимости от вычислительной модели. Это то, о чем я никогда не думал и не слышал. Пример, данный мне, который проиллюстрировал это далее, пользователем @chi был: Например, рассмотрим задачу: дано вернуть . В оперативной памяти это может быть...

10
Исследуется ли следующее расширение конечных автоматов?

Рассмотрим конечный автомат как обычно, но при каждом переходе он также может обновлять целочисленный счетчик, добавляя или вычитая число. Скажем, переходная функция вида перемещается в новое состояние и добавляет в счетчик, где (так что может быть положительным , отрицательный или...

10
Литература о наивном подходе к изоморфизму графа путем проверки полиномов матриц смежности

Я описываю подход к изоморфизму графа, который, вероятно, имеет ложные срабатывания, и мне любопытно, есть ли литература, указывающая, что он не работает. Учитывая две матрицы смежности , по общему признанию наивный метод проверки изоморфизма состоит в проверке, существует ли для каждой строки u...

10
Типы как гражданин первого класса

Исходя из опыта C ++, я не понимаю, зачем нужны типы / выражения типов как первоклассный гражданин? Единственный язык, который я знаю, который поддерживает эту функцию, это Aldor. Есть ли у кого-нибудь литература о типах как первоклассном гражданине или есть причины, почему это...

10
проблема графа социальной сети

Вот проблема: Там связаны графа с узлами, представляющими количество людей. У каждого узла / человека есть мнение по теме, например, Трамп против Клинтона, бумажные книги против Киндла и т. Д. Цель состоит в том, чтобы каждый узел в графе разделял одно и то же мнение, выбирая конкретное...

10
Почему рекурсивные типы необходимы в качестве примитивов для доказательств в системах зависимых типов?

Я относительно новичок в теории типов и зависимом программировании. Я изучал исчисление конструкций (CoC) и других систем чистого типа. Я особенно заинтересован в том, чтобы использовать его в качестве промежуточного представления для сохранения системы компиляции. Я понимаю , что (со) рекурсивные...

10
Обработка неориентированных графов как подкатегории ориентированных графов

Грубо говоря, неориентированный граф очень похож на ориентированный граф, где для каждого ребра (v, w) всегда есть ребро (w, v). Это говорит о том, что было бы приемлемо рассматривать неориентированные графы как подмножество ориентированных графов (возможно, с дополнительным ограничением, что...