From what I know If the predicate $P(t,x_1,...,x_n)$ belongs to some PRC class $\zeta$ then so do the predicates
$(\forall t)_{\le y}$ $P(t,x_1,...,x_n)$
$(\exists t)_{\le y}$ $P(t,x_1,...,x_n)$
But what about the unbounded quantifier? what difference does it make if I replace $(\forall t)_\le$ with $(\forall t)$ and also $(\exists t)_\le$ with $(\exists t)$ ?
Davis in his book page 43 says:
Theorem 3.3: A function is primitive recursive if and only if it belongs to every PRC class
I saw a problem related to what I said that I couldn't solve, here it is :
If $P(x)$ and $Q(x)$ are primitive recursive predicates which one of the following may not be primitive recursive:
$P(x) \rightarrow Q(x)$
$Q(z) \wedge P([\sqrt{x}])$
$\forall x(x \le y \rightarrow P(x))$
$\exists x(P(x) \wedge Q(x)) $
Since only one of the above choices is right, so I don't know 3 is the answer or 4!
Asked By : Drupalist
Answered By : David Durrleman
If $P(t,x_1,\dots,x_n) \in \zeta$, then clearly $(\forall t)_{\le 0}P(t,x_1,\dots,x_n) = P(0,x_1,\dots,x_n) \in \zeta$.
Moreover, if for some $y$, we have $(\forall t)_{\le y}P(t,x_1,\dots,x_n) \in \zeta$, then it can easily be shown that $(\forall t)_{\le y+1}P(t,x_1,\dots,x_n) = P(y+1,x_1,\dots,x_n) \land (\forall t)_{\le y}P(t,x_1,\dots,x_n) \in \zeta$, noting that taking the logical and is a primitive recursive operation.
By induction, we have that for any $y$, $(\forall t)_{\le y}P(t,x_1,\dots,x_n) \in \zeta$. Things work similarly for $(\exists t)_{\le y}$. However, this reasoning doesn't extend to unbounded quantifiers, and in the general case, $\forall t P(t,x_1,\dots,x_n) \notin \zeta$.
If you think of PRC predicates as things that can be checked by a computer in finite time, the underlying meaning is that
- if it takes finite time to check whether a given proposition is true for any given value, then it also takes finite time to check whether it's true for any/all values in a finite set (at most the sum of the finite times taken to check for each element in the set)
- on the other hand, it's not necessarily possible to check that it's true for any/all values in an infinite set. Naively checking for $0$, then $1$, then $2$, etc..., could take forever.
The answer to your second question is proposition 4. Indeed, in proposition 3, the universal quantifier over $x$ is bounded by the free variable $y$, which is a finite value. In other words, proposition 3 could be rewritten as $(\forall x)_{\le y}P(x)$.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/38281
0 comments:
Post a Comment
Let us know your responses and feedback