{"title":"Unit refutability of horn constraint systems - certification and parallel complexity","authors":"P. Wojciechowski, K. Subramani","doi":"10.1016/j.tcs.2025.115419","DOIUrl":null,"url":null,"abstract":"<div><div>This paper is concerned with algorithmic procedures for checking if a Horn Constraint System (HCS) has unit refutations of linear feasibility. A Horn constraint is a linear constraint of the form <span><math><mi>a</mi><mo>⋅</mo><mi>x</mi><mo>≥</mo><mi>b</mi></math></span>, where each <span><math><msub><mrow><mi>a</mi></mrow><mrow><mi>i</mi></mrow></msub><mo>∈</mo><mo>{</mo><mn>0</mn><mo>,</mo><mn>1</mn><mo>,</mo><mo>−</mo><mn>1</mn><mo>}</mo></math></span> and at most one of the <span><math><msub><mrow><mi>a</mi></mrow><mrow><mi>i</mi></mrow></msub></math></span>'s is positive. Horn constraints generalize Horn clauses and find applications in a number of practical domains such as program verification and econometrics. There exist quite a few algorithms in the literature for checking linear (and hence integer) feasibility in HCSs. We are concerned with the complementary problem, viz., that of finding refutations. In particular, we focus on unit refutations, i.e., refutations in which a unit variable constraint <strong>must</strong> be used in each inference step. Unit refutations are an analogue of unit resolution, which is a widely used refutation system in Boolean constraint solving. Whereas unit resolution is <strong>complete</strong> for Horn clausal systems, unit refutation is <strong>incomplete</strong> for HCSs. Although incomplete, unit refutations are very useful from the perspective of establishing a certain type of infeasibility. Our main contribution is showing that the problem of checking if an infeasible HCS has a unit refutation is in <strong>P</strong>. Towards this end, we provide two algorithms: a non-certifying algorithm which runs in <span><math><mi>O</mi><mo>(</mo><mi>m</mi><mo>⋅</mo><msup><mrow><mi>n</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>)</mo></math></span> time and a certifying algorithm which runs in <span><math><mi>O</mi><mo>(</mo><msup><mrow><mi>m</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>⋅</mo><msup><mrow><mi>n</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>)</mo></math></span> time, where <em>m</em> and <em>n</em> are the number of constraints and number of variables in the input HCS, respectively. Our algorithms are based on a combination of new and existing insights regarding Horn constraints. What is particularly interesting about our approach is that we are able to efficiently certify the existence of a unit refutation, although the actual refutation itself could be <em>exponential</em> in the size of the input. From the perspective of parallel algorithms, we show that the unit refutation problem in HCSs is <strong>P-complete</strong>.<span><span><sup>2</sup></span></span> </div></div>","PeriodicalId":49438,"journal":{"name":"Theoretical Computer Science","volume":"1053 ","pages":"Article 115419"},"PeriodicalIF":1.0000,"publicationDate":"2025-06-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Theoretical Computer Science","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0304397525003573","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0
Abstract
This paper is concerned with algorithmic procedures for checking if a Horn Constraint System (HCS) has unit refutations of linear feasibility. A Horn constraint is a linear constraint of the form , where each and at most one of the 's is positive. Horn constraints generalize Horn clauses and find applications in a number of practical domains such as program verification and econometrics. There exist quite a few algorithms in the literature for checking linear (and hence integer) feasibility in HCSs. We are concerned with the complementary problem, viz., that of finding refutations. In particular, we focus on unit refutations, i.e., refutations in which a unit variable constraint must be used in each inference step. Unit refutations are an analogue of unit resolution, which is a widely used refutation system in Boolean constraint solving. Whereas unit resolution is complete for Horn clausal systems, unit refutation is incomplete for HCSs. Although incomplete, unit refutations are very useful from the perspective of establishing a certain type of infeasibility. Our main contribution is showing that the problem of checking if an infeasible HCS has a unit refutation is in P. Towards this end, we provide two algorithms: a non-certifying algorithm which runs in time and a certifying algorithm which runs in time, where m and n are the number of constraints and number of variables in the input HCS, respectively. Our algorithms are based on a combination of new and existing insights regarding Horn constraints. What is particularly interesting about our approach is that we are able to efficiently certify the existence of a unit refutation, although the actual refutation itself could be exponential in the size of the input. From the perspective of parallel algorithms, we show that the unit refutation problem in HCSs is P-complete.2
期刊介绍:
Theoretical Computer Science is mathematical and abstract in spirit, but it derives its motivation from practical and everyday computation. Its aim is to understand the nature of computation and, as a consequence of this understanding, provide more efficient methodologies. All papers introducing or studying mathematical, logic and formal concepts and methods are welcome, provided that their motivation is clearly drawn from the field of computing.