두 개의 한정자 (


15

SAT 솔버는 하나의 수량 자로 부울 수식의 유효성을 확인할 수있는 강력한 방법을 제공합니다.

예를 들어, 의 유효성을 검사합니다 . φ ( x ) , SAT 솔버를 사용하여 φ ( x ) 가 만족 스러운지 여부를 결정할 수 있습니다. x 의 유효성을 검사합니다 . φ ( x ) , SAT 솔버를 사용하여 ¬ φ ( x ) 가 만족 스러운지 여부를 결정할 수 있습니다. (여기서 x = ( x 1 , , x n ) 은 부울 변수 의 n- 벡터이며 φx.φ(x)φ(x)x.φ(x)¬φ(x)x=(x1,,xn)nφ 부울 수식입니다.)

QBF 솔버는 임의의 수량자를 갖는 부울 공식의 유효성을 확인하도록 설계되었습니다.

수량자가 두 개인 수식이 있으면 어떻게합니까? 유효성 검사를위한 효율적인 알고리즘이 있습니까? QBF에 일반 알고리즘을 사용하는 것보다 낫습니까? 좀 더 구체적으로 말하면 형식의 수식이 있습니다. y . ψ ( x , y ) (또는 x . y . ψ ( x , y ) )의 유효성을 확인하고 싶습니다. 이에 대한 좋은 알고리즘이 있습니까? 편집 4/8 : 이 수식 클래스는 때때로 2QBF로 알려져 있으므로 2QBF에 대한 좋은 알고리즘을 찾고 있습니다.x.y.ψ(x,y)x.y.ψ(x,y)

더 전문화 : 내 특별한 경우에는 형식의 수식이 있습니다. y . 유효성을 확인하고자하는 f ( x ) = g ( y ) , 여기서 f , gk 비트 출력 을 생성하는 함수입니다 . QBF의 일반 알고리즘보다이 특정 종류의 수식의 유효성을 확인하는 알고리즘이 더 효율적입니까?x.y.f(x)=g(y)f,gk

추신 : 복잡한 이론에서 최악의 경도에 대해서는 묻지 않습니다. 실제로 유용한 알고리즘에 대해 묻고 있습니다 (SAT가 NP-complete 인 경우에도 최신 SAT 솔버가 많은 문제에 실제로 유용하기는하지만).


4
는 본질적으로x y ψ ( x , y ) 와 같지 않습니다. xy ψ(x,y)xy ψ(x,y)
Huck Bennett

2
저는 OP가 비공식적으로 의미한다고 생각합니다. SAT 솔버 모두에게 어렵고 둘 중 하나에 대한 해결책이 흥미로울 것입니다.
Suresh Venkat

1
@ HuckBennett, 나는 두 경도가 동일하다고 생각합니다. (증명 : 유효 IFF이다 ¬ X . Y . ¬ ψ ( x가 , y는 ) 이고 따라서이 형태의 식 시험 유효 할 수있는 방법이 있다면. X . Y . ψ ( X , Y ) 식, 우리는 또한 테스트 할 수있는 유효 X . Yx.y.ψ(x,y)¬x.y.¬ψ(x,y)x.y.ψ(x,y) 시켜서 ψ을 " ( X , Y ) = ¬ ψ ( X , Y ) 과의 유효성 테스트X를 . y . ψ ( x , y ) .) 어쨌든 어느 경우 에나 알고리즘에 관심이 있습니다. x.y.ψ(x,y)ψ(x,y)=¬ψ(x,y)x.y.ψ(x,y)
DW

6
@DW, 반드시, 예를 들어 SAT 및 TAUT가 동일한 복잡성을 갖는 것으로 여겨지는 것은 아니다.
Kaveh

4
@ chazisop : OP가 일반적인 QBF 솔버가 아닌 -SAT 알고리즘 / 솔버를 요구한다고 생각합니다 . 그러나 많은 QBF 솔버가 존재합니다. qbflib.org 의 "솔버"탭을 보십시오Π2/Σ2
Huck Bennett

답변:


22

내가 뻔뻔스럽게 자신을 광고한다면, 우리는 작년 2QBF에 대한 추상화 기반 알고리즘에 관한 기사 를 썼습니다 . qdimacs에 대한 구현이 있습니다. 원하는 경우 제공 할 수 있지만 내 경험에 따르면 특정 문제에 대한 알고리즘을 전문화하면 큰 이점을 얻을 수 있습니다. 구식 2QBF 알고리즘의 비교 연구 는 상당히 쉽게 구현할 수있는 알고리즘 을 제시합니다.


대박! 고마워, 미 콜라스, 이것은 내가 바라던 일 종일 뿐이다.
DW

2
안녕하세요 @DW 도와 드릴 수 있습니다. 바라건대이 중 일부가 유용 할 것입니다. QBF는 SAT와는 상당히 다른 짐승이므로 일이 매우 쉽게 터질 수 있기 때문에 약간 조심해야합니다. 우리의 작업에 대해 더 자세한 질문이 있으시면 언제든지 저에게 이메일을 보내주십시오.
Mikolas

7

나는 이것과 관련된 두 가지 논문을 읽었으며, 하나는 2QBF와 관련이 있습니다. 논문은 다음과 같습니다.

증분 결정 , Markus N. Rabe 및 Sanjit Seshia, 만족도 테스트 이론 및 응용 (SAT 2016).

CADET 이라는 도구로 알고리즘을 구현했습니다 . 기본 개념은 제약 조건이 고유 한 Skolem 함수를 설명 할 때까지 또는 부재가 확인 될 때까지 공식에 새 제약 조건을 점차적으로 추가하는 것입니다.

두 번째는 Incremental QBF Solving , Florian Lonsing 및 Uwe Egly입니다.

DepQBF 라는 도구로 구현되었습니다 . 수량 자 교번 수에 제한을 두지 않습니다. 우리는 밀접하게 관련된 qbf 공식이 있다고 가정합니다. 그것은 증분 해결을 기반으로하며 마지막 해결 중에 배운 절을 던지지 않습니다. 현재 수식에 절과 큐브를 추가하고 unsat 또는 sat를 나타내는 절이나 큐브가 비어있는 경우 중지합니다.

편집 : 단지 2QBF 벤치 마크에서 이러한 접근 방식이 얼마나 잘 작동하는지에 대한 관점을 보자. 연간 QBF 경쟁 QBFEVAL결과는 QBFEVal-2018 의 결과를 참조하십시오 . 2019 년에는 2QBF 트랙이 없었습니다.

에서 2QBF 트랙 QBFEVAL-2018 DepQBF가 승자였다 , 생도 했다 두 번째 경주한다.

따라서이 두 가지 접근 방식은 실제로는 적어도 QBFEVAL 벤치 마크에서 실제로 잘 작동합니다.


4

xyϕDaD¬ϕ[a/x]bBaϕ[b/y]ϕ


2
ϕϕ

아주 훌륭합니다. 적대적인 머신 러닝과 비슷한 점이 있습니다. 당신은 일종의 솔버가있는 보완 된 격자에서 작동합니다.
Samuel Schlesinger
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.