«sat-solvers» 태그된 질문

부울 만족도 문제의 솔버 프로그램에 대한 질문입니다.

2
SAT 솔버에 대한 1-out-of-n 제약 조건 인코딩
문제를 인코딩하기 위해 SAT 솔버를 사용하고 있으며 SAT 인스턴스의 일부로 부울 변수 있는데 그중 하나가 참이고 나머지는 거짓이어야합니다. . (이것은 때때로 "one-hot"인코딩으로 묘사되는 것을 보았습니다.)x1,x2,…,xnx1,x2,…,xnx_1,x_2,\dots,x_n SAT 에서 제약 조건을 " 중 정확히 하나 여야합니다 "를 인코딩하려고 합니다. SAT 솔버를 최대한 효율적으로 실행하려면이 제약 조건을 인코딩하는 가장 좋은 방법은 무엇입니까?x1,…,xnx1,…,xnx_1,\dots,x_n 이 …

1
CNF에서 DNF 로의 변환이 NP-Hard임을 증명
이 질문은 Computer Science Stack Exchange에서 답변을 얻을 수 있기 때문에 Stack Overflow에서 마이그레이션 되었습니다. 7 년 전에 이주했습니다 . CNF에서 DNF 로의 변환이 NP-Hard임을 어떻게 증명할 수 있습니까? 나는 대답을 요구하지 않고 그것을 증명하는 방법에 대한 몇 가지 제안 만합니다.

1
최근의 모든 SAT 솔버가 회로 SAT 대신 CNF에서 작동하는 이유는 무엇입니까?
2006 년 언젠가 그래프를 처리하고 변환하기 위해 AIGER 라이브러리가 출시 된 후 (제 생각에) 일부 회로 SAT 솔버가 2006-2008 년에 릴리스되었으며, 일부 SAT 레이스 / 경쟁에는 AIG 트랙이있었습니다. 그러나 그 이후로 SMT 또는 clausal SAT 솔버 개선에 전적으로 초점을 둔 것으로 보입니다. 직관적으로 회로 SAT에 집중하는 것은 많은 의미가있는 것 …

1
SAT vs Constraint Satisfaction을 언제 사용해야합니까?
어려운 문제가 발생하면 하나의 표준 접근 방식은 SAT 인스턴스로 표현하고 SAT 솔버를 실행하는 것입니다. 또 다른 표준 접근법은이를 제약 조건 만족 문제로 표현하고 CSP 솔버를 사용해보십시오. 이 두 가지는 어떤 종류의 문제가 자연스럽게 입력 형식으로 표현 될 수 있는지에 대해 모호하게 유사하다고 생각합니다. 주어진 문제에 대해 어떤 방법으로 좋은 결과를 …

3
SAT 인코딩을위한 레시피 북?
SAT 솔버는 대규모 인스턴스를 해결하는 데 점점 더 효율적이고 다양한 컨텍스트에서 백엔드로 사용되고 있습니다. 특정 도메인에서 문제를 해결하기 위해 그것들을 사용하기를 원할 때마다 올바른 솔루션 세트뿐만 아니라 제약 조건을 중복하는 형식의 임시 인코딩을 만들어야합니다. 솔버의 휴리스틱이 솔루션을 더 빨리 찾는 데 도움이됩니다. 예를 들어, 유한 한 노드 집합이 트리 또는 …

3
멀티 코어 SAT 솔버
25k 절 5k 변수 SAT 문제를 해결하려고합니다. 한 시간 동안 실행되어 (precosat) 나중에 더 큰 것을 풀고 싶기 때문에 멀티 코어 SAT-Solver를 찾고 있습니다. 많은 SAT-Solvers가있는 것처럼 나는 상당히 길을 잃었습니다. 누구든지 내 사건에 가장 적합한 것을 지적 할 수 있습니까? 누군가가 나에게 대략적인 시간을 줄 수 있다면 기쁠 것입니다 …

1
구체화 유형 추론
직장에서 나는 동적 언어에 대한 몇 가지 유형 정보를 유추하는 임무를 맡았습니다. 다음 let과 같이 일련의 명령문을 중첩 된 표현식 으로 다시 작성합니다 . return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

1
최고 SAT 솔버가 쉬운 숫자를 고려할 수 있습니까?
현대의 SAT 솔버는 많은 실제 SAT 인스턴스 예를 해결하는 데 매우 능숙합니다. 그러나 어려운 것을 생성하는 방법을 알고 있습니다. 예를 들어 , 인수 분해에서 SAT 로 축소를 사용 하고 RSA 번호를 입력으로 제공합니다. 이것은 쉽게 팩토링의 예를 들면 어떨까요? 대신에 두 개의 큰 소수를 복용 I가 소수 걸릴 경우 어떻게 …

1
통일 vs. SAT 솔버
나는 Wikipedia에서 통일 이 만족스러운 문제를 해결하는 과정 이라고 읽었습니다 . 동시에, 그러한 솔버를 "SAT 솔버"또는 "SMT 솔버"라고합니다. 그래서 그들은 같은 것의 다른 이름입니까? 그들이 다르다고 말하면 내 치료에 결함이 있음을 지적하십시오.

1
분쟁 중심 조항 학습 역 추적 설명
wikipedia 페이지 에서 CDCL 알고리즘에 대해 잘 설명하고 있습니다 (사진은 Princeton의 Sharad Malik이 만든 슬라이드에서 가져온 것 같습니다). 그러나 모든 역 추적 방법을 설명 할 때는 "적절한 시점까지"라고 말합니다. MiniSAT는 또한 CDCL 알고리즘의 변형을 사용하므로이 논문을 읽었습니다.. 그들이 말하는 것처럼 배운 조항이 단위 조항이 될 때까지 역 추적해야한다는 것입니다. 그것은 …

2
1 차 로직 검증 소개
소프트웨어 검증에 대한 다른 접근 방식을 스스로 가르치려고합니다. 몇 가지 기사를 읽었습니다. 내가 아는 한, 시간이있는 제안 논리는 일반적으로 SAT 솔버와 함께 모델 검사를 사용합니다 (진행중인 시스템에서) 시간이있는 1 차 논리는 ​​어떻습니까? 정리 프로 버를 사용합니까? 아니면 SAT도 사용할 수 있습니까? 이 문제에서 초보자를위한 책이나 기사에 대한 조언은 대단히 높이 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.