Domanda

Per uno dei miei corsi iniziali di informatica, esamineremo la "logica funzionale della verità".

La mia domanda riguarda le traduzioni in inglese.Nota che ^ è AND;v è (incluso)OR;~ NON lo è.-> è SE

Bene, avevamo questo:"L'affitto pagato è condizione necessaria per restare in AFFARE"

RENT -> BUSINESS

Ogni volta che valutavamo tutto, questo era sbagliato.Ho chiesto alla maestra perché e lei non ha risposto altro che "se non c'è then nella frase, l'antecedente è sempre l'ultimo"

Vorrei qualche spiegazione in più su come questo sia sbagliato.E come la frase non è ambigua.Qualcosa di più del "non c'era". then quindi è sempre così."

Inoltre, una nota a margine:Dove è finito il IF da dove viene l'operatore booleano?Non ho mai sentito parlare di un operatore del genere che nel codice Cish è sostanzialmente equivalente a a==true?b:true.Ho molta difficoltà a comprenderne l'utilizzo.

modificare:La risposta corretta era

BUSINESS -> RENT
È stato utile?

Soluzione

Se paghi l'affitto, non sei necessariamente in affari.Affittare !(->) Affari.

Tuttavia, se svolgi un'attività, devi pagare l'affitto.Affari -> Affitto.

Altri suggerimenti

Penso che avrebbe dovuto essere scritto:

BUSINESS -> RENT

"Se rimani in affari, pagherai l'affitto."

P -> Q

si può affermare "P implica Q", "Se P, allora Q" o "Q se P".

Lei ha ragione.È un classico UN implica B Ma B non implica UN.Quello che dici è che gli affari sono una condizione necessaria per pagare l'affitto, il che è sbagliato.

Dove è finito il IF da dove viene l'operatore booleano?Non ho mai sentito parlare di un operatore del genere che nel codice Cish è sostanzialmente equivalente a a==true?b:true.Ho molta difficoltà a comprenderne l'utilizzo.

Questo operatore è più comunemente chiamato “implicazione”.Cosa intendi con “da dove viene”?

E sì, implicazione È difficile da comprendere e il tuo errore è del tutto tipico.

Puoi spiegare l'implicazione notando che con false premesse, qualunque cosa può essere spiegato, anche in modo fasullo (ad esempio, possiamo dimostrare matematicamente che 1 = 2 se usiamo la premessa che la divisione per 0 è legale).Per tale motivo, 0 -> x è sempre vero, indipendentemente dal valore di x (cioè.l’implicazione può produrre il risultato).

D'altra parte, se le premesse sono corrette, un'implicazione porterà a un risultato corretto 1 -> 1 è vero (una premessa vera implica un risultato vero), e 1 -> 0 è falso (una premessa vera non può implicare un risultato falso).

!RENT -> !BUSINESS

Se non paghi l'affitto, non sei in affari.Questo è il "contrapositivo" di

BUSINESS -> RENT

Se sei in affari, allora paghi l'affitto.

Altri modi per dirlo (dal a -> b === (!a || b) ):

!BUSINESS || RENT
RENT || !BUSINESS

O non hai un'attività o stai pagando l'affitto o entrambi (o viceversa).

!(!RENT && BUSINESS)

Non stai pagando l'affitto e non stai lavorando (o viceversa).

AGGIUNTO:A proposito, ecco come funziona la risoluzione.Metti la tua conoscenza nella forma normale congiuntiva, dove ogni clausola consiste in una disgiunzione di termini atomici, ognuno dei quali può essere negato.Se sai che non stai pagando l'affitto, allora quella è una clausola che puoi risolvere (ad es.annullare i termini) con l'implicazione di dedurre una nuova clausola, vale a dire che non sei in affari.

RENT || !BUSINESS
!RENT
--------
!BUSINESS

Allo stesso modo, se sai di essere in affari, puoi annullare i termini per concludere che stai pagando l'affitto.

RENT || !BUSINESS
BUSINESS
--------
RENT

Questa è l'attrattiva dei dimostratori di teoremi di risoluzione: una regola di inferenza copre sia l'inferenza in avanti che quella all'indietro.

Gestisce bene anche il ragionamento tra maiuscole e minuscole, ad esempio se A->C e B->C e A||B ti consente di concludere C:

1. !A || C
2. !B || C
3.  A || B
----------
4.  B || C  (resolve 3 and 1)
5.  C       (resolve 4 and 2)

La chiave qui è la parola "necessario". Abbiamo qui una frase della forma "X è necessario per Y." Ciò significa che X deve essere vero per Y per essere vero.Nel linguaggio quotidiano pensiamo a questo come "Y non può essere vero a meno che X è vero".E questo si traduce molto chiaramente in “se X è falso allora Y è falso" perché se X erano falsi ma Y se fosse vero allora violeremmo Y non può essere vero a meno che X è vero.Ma se X è falso allora Y è falso si traduce simbolicamente in !X => !Y che ha contropositivo Y => X.Ecco perché "X è necessario per Y" è equivalente a Y => X.

Ecco un esempio:per essere dispari è necessario che sia primo e maggiore di due.Ciò significa che se un numero è primo e maggiore di due, deve essere dispari perché essere dispari è una condizione necessaria per essere primo e maggiore di due.Detto in altro modo, se un numero è primo e maggiore di due, deve essere dispari.Il contrario (se un numero è dispari deve essere primo) è assurdo.

Questo dovrebbe convincertene X è necessario per Y è equivalente a Y => X.

Esiste una relazione diversa ma correlata tra le affermazioni che assumono la forma seguente:"X è una condizione sufficiente per Y".Nel linguaggio quotidiano diremmo che “sapere X è vero è motivo di Y essere vero", o X => Y.

Queste due relazioni implicazionali (ormai è una parola!) sono duali l'una dell'altra.Infatti, in matematica, una forma molto importante è "X è una condizione necessaria e sufficiente per Y." Ciò significa che X => Y E Y => X, o quello X <=> Y.Lo diciamo X E Y sono equivalenti e talvolta diciamo "X if and only if Y" e talvolta lo abbreviano "X eff Y."

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top