Глоссарий ИИ
Полный словарь искусственного интеллекта
SAT-решатель
Алгоритм, определяющий, существует ли назначение переменных, которое делает булеву формулу истинной. Фундаментален для решения задач принятия решений в синтезе программ.
SMT-решатель
Расширение SAT-решателей, интегрирующее математические теории, такие как арифметика, массивы и типы данных. Позволяет решать более сложные ограничения в синтезе программ.
Логические ограничения
Математические формулы, выражающие свойства и поведение, которым должен соответствовать сгенерированный программный код. Служат мостом между пользовательскими спецификациями и автоматическим поиском решений.
Синтез с ограничениями
Парадигма, в которой спецификации преобразуются в систему ограничений, решаемую автоматическими решателями. Генерирует программы, формально гарантирующие соблюдение требований.
Кодирование проблемы
Процесс перевода спецификаций высокого уровня в логические формулы, понятные решателям. Определяет эффективность фазы решения ограничений.
Индуктивный синтез
Техника автоматического вывода программ на основе примеров желаемых входов-выходов. Комбинирует индуктивное обучение и решение ограничений для обобщения поведений.
SKETCH
Язык программирования, позволяющий задавать частичные программы с "дырами" для автоматического заполнения. Использует SMT-решатели для поиска оптимальных значений дыр.
SyGuS
Syntax-Guided Synthesis, стандарт формализации задач синтеза с указанной грамматикой решений. Позволяет контролировать структуру и сложность генерируемых программ.
Abstraction-réfinissement
Stratégie itérative simplifiant initialement le problème puis raffinant progressivement les contraintes. Équilibre efficacité et précision dans la synthèse de programmes complexes.
Apprentissage par contraintes
Méthode hybride combinant techniques d'apprentissage automatique et résolution de contraintes logiques. Accélère la synthèse en guidant intelligemment l'espace de recherche.
Vérification conditionnelle
Processus formel validant que le programme synthétisé satisfait l'ensemble des spécifications initiales. Essentiel pour garantir la correction des programmes générés automatiquement.
Algorithme DPLL
Davis-Putnam-Logemann-Loveland, algorithme fondamental pour la satisfaction de formules booléennes. Base de nombreux solveurs SAT modernes utilisés en synthèse de programmes.
Théorie des combinaisons
Mécanisme permettant aux solveurs SMT de gérer simultanément plusieurs théories mathématiques hétérogènes. Indispensable pour modéliser des problèmes de synthèse réalistes.
SAT modulo théories
Formalisme unifiant logique propositionnelle et théories mathématiques dans un cadre de résolution unique. Permet de traiter des contraintes complexes en synthèse de programmes.
Contraintes de symétrie
Propriétés formelles éliminant les solutions équivalentes pour réduire l'espace de recherche. Accélèrent significativement la synthèse en évitant l'exploration redondante.
Synthèse incrémentale
Approche constructivant progressivement le programme en ajoutant des fonctionnalités et contraintes itérativement. Permet de gérer la complexité par décomposition du problème.
Модели Хоара
Формальные тройки {Предусловие} Программа {Постусловие} для верификации и синтеза корректных программ. Теоретическая основа, гарантирующая корректность сгенерированных программ.