▲ | andrewla 5 days ago | ||||||||||||||||||||||
Hmm.. I'd love to see a more formal statement of this, because it feels unintuitive. Notably the question "given a number as input, output as many 1's as that number" is exponential in the input size. Is this problem therefore also strictly NP-hard? | |||||||||||||||||||||||
▲ | hwayne 5 days ago | parent | next [-] | ||||||||||||||||||||||
> Hmm.. I'd love to see a more formal statement of this, because it feels unintuitive. The problem is called "Vector Addition System Reachability", and the proof that it's Ackermann-complete is here: https://arxiv.org/pdf/2104.13866 (It's actually for "Vector Addition Systems with states, but the two are equivalent formalisms. They're also equivalent to Petri nets, which is what got me interested in this problem in the first place!) > Notably the question "given a number as input, output as many 1's as that number" is exponential in the input size. Is this problem therefore also strictly NP-hard? (Speaking off the cuff, so there's probably a mistake or two here, computability is hard and subtle!) Compression features in a lot of NP-hard problems! For example, it's possible to represent some graphs as "boolean circuits", eg a function `f(a, b)` that's true iff nodes `a,b` have an edge between them. This can use exponentially less space, which means a normal NP-complete problem on the graph becomes NEXPTIME-complete if the graph is encoded as a circuit. IMO this is cheating, which is why I don't like it as an example. "Given K as input, output K 1's" is not a decision problem because it's not a boolean "yes/no". "Given K as input, does it output K ones" is a decision problem. But IIRC then for `K=3` your input is `(3, 111)` so it's still linear on the input size. I think. | |||||||||||||||||||||||
| |||||||||||||||||||||||
▲ | throwaway81523 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
In the definition of NP, you get the input in unary, so that gets rid of that exponential. The issue with VAS is that the number of moves required could be extremely large. There's a similar situation in chess (at least if generalized to N by N). You could assert Black has a forced win from a given position, but verifying the claim requires checking the entire game tree, rather than a succinct certificate. Generalized chess is in fact PSPACE-complete, which is generally believed to be outside of NP. | |||||||||||||||||||||||
▲ | johntb86 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
It needs to be a decision problem (or easily recast as a decision problem). "given a number as input, output as many 1's as that number" doesn't have a yes or no answer. You could try to ask a related question like "given a number as input and a list of 1s, are there as many 1s as the number?" but that has a very large input. | |||||||||||||||||||||||
| |||||||||||||||||||||||
▲ | 5 days ago | parent | prev [-] | ||||||||||||||||||||||
[deleted] |