Dichiarazioni logiche con predicato
Ho questa domanda:
Dato $k,t$ e un numero primo maggiore di 1 ($p \geq 2$) e $k,t$sono naturali. Quale di questi predicati è giusto per "p è un numero primo":
- $\forall k \forall t((p=kt) \wedge ((k=1) \vee (t=1)))$
- $\forall k \forall t((k=1) \vee (t=1) \vee (p \neq kt))$
- $\forall k \forall t(((k \neq 1) \vee (t \neq 1)) \rightarrow (p \neq kt))$
- $\forall k \forall t(((k = 1) \vee (t=1)) \rightarrow (p \neq kt))$
Posso trovarne qualsiasi $k,t$ciò contraddirebbe ogni opzione, quindi esiste anche una soluzione? Ad esempio per 2:
posso trovare $k=1$ e $t=13$ e $p = 13$ che è un primo ma dice $p \neq 13$... che cosa?! Come..
Apprezzerei il tuo aiuto! Grazie mille.
Risposte
2 è corretto. Uno dei due$k$ e $t$ è $1$ o $p$ non è primo.
Si noti che nessuno dei predicati definisce direttamente i numeri primi .
Le domande chiedono quale predicato sia corretto conoscere $p$ è il primo.
- Se $k=1$ allora (2) è corretto indipendentemente da tutto il resto
- Se $t=1$ allora (2) è corretto indipendentemente da tutto il resto
- Se $p\ne kt$ allora (2) è corretto indipendentemente da tutto il resto
Se nessuno di $k$ e $t$ siamo $1$quindi l'ultimo è corretto. Altrimenti uno dei primi due è corretto.