Zachary Abel, Jeffrey Bosboom, E. Demaine, Linus Hamilton, Adam Hesterberg, Justin Kopinsky, J. Lynch, Mikhail Rudoy
{"title":"Who witnesses The Witness? Finding witnesses in The Witness is hard and sometimes impossible","authors":"Zachary Abel, Jeffrey Bosboom, E. Demaine, Linus Hamilton, Adam Hesterberg, Justin Kopinsky, J. Lynch, Mikhail Rudoy","doi":"10.4230/LIPIcs.FUN.2018.3","DOIUrl":null,"url":null,"abstract":"We analyze the computational complexity of the many types of pencil-and-paper-style puzzles featured in the 2016 puzzle video game The Witness. In all puzzles, the goal is to draw a path in a rectangular grid graph from a start vertex to a destination vertex. The different puzzle types place different constraints on the path: preventing some edges from being visited (broken edges); forcing some edges or vertices to be visited (hexagons); forcing some cells to have certain numbers of incident path edges (triangles); or forcing the regions formed by the path to be partially monochromatic (squares), have exactly two special cells (stars), or be singly covered by given shapes (polyominoes) and/or negatively counting shapes (antipolyominoes). We show that any one of these clue types (except the first) is enough to make path finding NP-complete (\"witnesses exist but are hard to find\"), even for rectangular boards. Furthermore, we show that a final clue type (antibody), which necessarily \"cancels\" the effect of another clue in the same region, makes path finding Sigma_2-complete (\"witnesses do not exist\"), even with a single antibody (combined with many anti/polyominoes), and the problem gets no harder with many antibodies.","PeriodicalId":293763,"journal":{"name":"Fun with Algorithms","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-04-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Fun with Algorithms","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/LIPIcs.FUN.2018.3","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
We analyze the computational complexity of the many types of pencil-and-paper-style puzzles featured in the 2016 puzzle video game The Witness. In all puzzles, the goal is to draw a path in a rectangular grid graph from a start vertex to a destination vertex. The different puzzle types place different constraints on the path: preventing some edges from being visited (broken edges); forcing some edges or vertices to be visited (hexagons); forcing some cells to have certain numbers of incident path edges (triangles); or forcing the regions formed by the path to be partially monochromatic (squares), have exactly two special cells (stars), or be singly covered by given shapes (polyominoes) and/or negatively counting shapes (antipolyominoes). We show that any one of these clue types (except the first) is enough to make path finding NP-complete ("witnesses exist but are hard to find"), even for rectangular boards. Furthermore, we show that a final clue type (antibody), which necessarily "cancels" the effect of another clue in the same region, makes path finding Sigma_2-complete ("witnesses do not exist"), even with a single antibody (combined with many anti/polyominoes), and the problem gets no harder with many antibodies.