Vai al contenuto

Messaggio consigliato


Inviato
1 ora fa, Garyx ha scritto:

@Black Lotus Ti dispiace se do una risposta alternativa? Llionas non è tanto scientifico quanto pratico, ed al momento penso abbia altro per la testa  😁

 

Va bene qualunque risposta, incluso che, in quel momento, hai altro a cui pensare. La domanda era volutamente facile anche per questo.

Inviato
10 ore fa, Alonewolf87 ha scritto:

Qui potresti stare dando per scontato cose 😄

Hai ragione. Diciamolo meglio: era facile se capivi il meccanismo dietro (ricavandolo dall’esempio). Per uno che non ha mai sentito/studiato queste cose, proprio “facile” non è.

Inviato

@Alonewolf87 Ho letto il tuo post. Allora, siccome poi queste cose ci servono in futuro (so che sembrano solo astrattismi all’inizio, bisogna fare un piccolo sacrificio per un beneficio futuro), vediamo di chiarirle per bene fin dal principio.

Spoiler

Chiariamo prima il concetto di “operatore” in termini intuitivi: tutte le operazioni aritmetiche sono operatori. Il “+” è un operatore. Adesso generalizziamo leggermente: un operatore è “qualcosa che ci consente di fare una trasformazione”. Ad esempio, il “+” ci consente di fare le somme.

Se “Op” è un operatore ed A,B, C, ... X,Y, Z sono variabili (numeri), allora scrivere: Z = Op(X,Y) significa: la variabile Z si ottiene dall’operazione “Op” effettuata su X e su Y. Esempi: Op(X,Y) = X+Y, allora Z = X+Y, se invece Op(X,Y) = X*Y, allora Z=X*Y; ma anche: Op(X,Y) = X*X + Y*Y (somma di quadrati).

Un operatore può avere qualunque numero di variabili in ingresso, finora ho fatto esempi con 2 variabili, ma nulla vieta di avere Op(X,Y,Z) (3 variabili) oppure 100 variabili. Il numero di variabili in ingresso si chiama “arità” dell’operatore. Una variabile d’input = operatore unario; due variabili d’input = operatore binario; tre = ternario, e così via (ad un certo punto, la dicitura in italiano diventa intortigliata, quindi si preferisce dire “di arità N”).

Un operatore puoi immaginarlo come una black box nella quale ficchiamo le variabili richieste in ingresso e poi ci tira fuori una variabile d’uscita. Dal tuo punto di vista (esterno), un operatore è un frullatore di numeri e tu non hai la più pallida idea di cosa stia facendo fino a quando non ci guardi dentro.

Tu puoi definire un operatore come più ti piace. Significa che puoi costruirti il tuo frullatore personale.

I connettivi logici sono degli operatori booleani. “Booleani” significa che gli unici numeri che puoi ficcarci dentro sono 0 ed 1. Non ha senso, ad esempio, fare l’AND tra 0.1 e 5. Se provi a farlo, il display del frullatore ti dice “input errato” e non parte.

All’inizio, definisco tre connettivi logici: OR, AND, NOT. Dimmi se queste definizioni ti sono chiare oppure se hai ancora qualche dubbio residuo.

Poi, affermo: tu puoi definire tutti i connettivi logici che più ti piacciono, ma un teorema (di cui non vi scrivo la dimostrazione solo perché è molto lunga e piena di tecnicismi superflui ai nostri fini) garantisce che tutti sono riscrivibili in funzione dei soli tre operatori elementari (AND, OR, NOT).

Cosa significa? Significa che io ho bisogno di soli tre frullatori (il frullatore AND, il frullatore OR ed il frullatore NOT) per fare qualsiasi ricetta possibile. Non mi serve il frullatore personale di @Alonewolf87 per preparare una ricetta.

In termini precisi, diciamo che {AND, OR, NOT} è “funzionalmente completo” (per brevità, scriverò “completo” e basta), cioè non ho bisogno di altri operatori (booleani) per fare tutte le operazioni (booleane) che voglio.

Lo step successivo è stato far vedete che il solo {AND, NOT} è già per sé completo. Come si fa a dimostrarlo? Ebbene, se io ipoteticamente riuscissi, usando solo AND e NOT, a riscrivere l’operatore OR, allora è fatta, perché so già che {AND, OR, NOT} è completo.

L’espressione nel mio post scrive A+B (quindi l’OR) utilizzando esclusivamente AND e NOT. Quindi i frullatori AND e NOT, anche se con un po’ di fatica in più, possono replicare il frullatore OR, che quindi posso anche non usare.

L’esercizio ora è questo: dimostrare che {OR, NOT} è completo. Significa che devo scrivere una espressione logica dove, a sinistra dell’uguale, ho: A*B (l’AND, appunto), mentre a destra dell’uguale devo stare attento ed usare solo “+” e “NOT”. Devo “ricostruire” l’AND utilizzando solo OR e NOT.

Facciamo un tentativo:

A*B ?=? NOT(A) + B

Questo non funziona: se scrivi la tabella della verità del termine a destra non ti esce (0001), cioè l’AND. Altro tentativo:

A*B ?=? NOT(A) + NOT(B)

Anche questo non funziona. Ma, se lo guardi più da vicino, ti accorgerai che non è poi così lontano dalla soluzione... prova a scrivere la tabella della verità del termine a destra e a confrontarla con quella dell’AND.

 

  • Supermoderatore
Inviato
11 minuti fa, Black Lotus ha scritto:

Ho letto il tuo post. Allora, siccome poi queste cose ci servono in futuro (so che sembrano solo astrattismi all’inizio, bisogna fare un piccolo sacrificio per un beneficio futuro), vediamo di chiarirle per bene fin dal principio.

Ti offendi se ti dico che (Bernard a parte a cui interessa praticamente nulla della questione) anche io giocatore non ho questo grande interesse ad approfondire la questione? Ci fecero una breve introduzione a questi concetti di logica all'università ma non mi presero all'epoca così come non lo fanno oggi. Posso capire che avrai dato a questi concetti un'importanza nella storia e nella trama futura ma non mi piace moltissimo l'idea di dover imparare nozioni per andare avanti in una narrazione...

Inviato

@Alonewolf87 Nella narrazione si va avanti a prescindere (e non mi offendo, ci mancherebbe). Piuttosto, pensavo il problema fosse una mia mancanza, per cui ho provato a spiegarmi meglio.

Ma non sono quei concetti in sé che servono: quelli sono come i mattoncini LEGO, presi da soli non servono a granché, quando costruisci inizi vedere i risultati (cosa che, da come ne parli, sicuramente non hai fatto). Giusto per darti una vaga idea, l’informatica non esisterebbe senza quella base (un bit vale 0 o 1, i circuiti nel tuo computer fanno lunghe sequenze di operazioni su lunghe stringhe di 0 e di 1, eccetera) quindi l’applicazione è in realtà molto concreta.

Sono consapevole che sembrino cose molto “astratte”, ma è solo apparenza, inconsciamente li usiamo sempre senza rendercene conto.

L’importanza per la storia futura è comunque sempre relativa, non ti preoccupare.

  • Grazie 1
  • Supermoderatore
Inviato
9 minuti fa, Black Lotus ha scritto:

cosa che, da come ne parli, sicuramente non hai fatto

Ce l'avevano giusto buttata lì durante il corso di analisi del 1° anno, ma la mia materia di studio sono le biotecnologie (in particolare quelle farmaceutiche). Mi rendo conto dell'estrema importanza delle scienze informatiche (e della statistica) nel mio campo, ma questi di logica computazionale sono principi che alla fine ad un ricercatore come me servivano (e servono= il giusto, quindi ho preso un approccio molto alla Sherlock Holmes ("sapere che la terra orbita intorno al sole e non viceversa non mi è utile" 😄 ).

Poi mi rendo conto che siano meno astratti di quello che appare dalla presentazione formale e che possano essere usati consciamente o inconsciamente nella vita normale, che i ragionamenti dietro siano molto più apprezzabile di quanto uno penserebbe. Probabilmente è la mancanza di interesse/passione che mi frena.

Inviato (modificato)
35 minuti fa, Alonewolf87 ha scritto:

@Black Lotus consiglio per il futuro, evitiamo il grigio per il parlato, ho fatto una fatica bestia a leggere l'ultimo post 🤣

Ci stava tantissimo per Shea! Comunque ok, vado di rosa fashion, viola ametista o cose del genere.

Modificato da Black Lotus
  • Supermoderatore
Inviato

@Black Lotus Tranquillo ci sta, mi immaginavo che l'approccio di Bernard non sarebbe stato molto gradito e mi sta bene che ci siano conseguenze per gli atteggiamenti del personaggio. Vedila semplicemente come Bernard che si sta avvicinando al suo limite personale di sopportazione di fumose affermazioni.

  • Mi piace 1
Inviato (modificato)
4 minuti fa, Alonewolf87 ha scritto:

@Black Lotus Tranquillo ci sta, mi immaginavo che l'approccio di Bernard non sarebbe stato molto gradito e mi sta bene che ci siano conseguenze per gli atteggiamenti del personaggio. Vedila semplicemente come Bernard che si sta avvicinando al suo limite personale di sopportazione di fumose affermazioni.

Bene. In compenso, hai scoperto che c'era molta carne sul fuoco che stava bruciando. Purtroppo, ti sei scottato. La prossima volta forse riuscirai ad arrivare alla carne senza bruciarti.

Tra parentesi, ti faccio riflettere su quanto sia complesso l'albero decisionale di questa campagna: se non aveste vinto il duello (quello contro monaco e chierico), facendo quindi una buona impressione a Rothschild, lui certamente non si sarebbe scomodato così tanto. E se Garyx non avesse fatto una certa scelta (per te è spoiler quindi non dico quale), allora avreste perso completamente qualunque possibilità di fare la divinazione.

Modificato da Black Lotus
  • Supermoderatore
Inviato
5 minuti fa, Black Lotus ha scritto:

Bene. In compenso, hai scoperto che c'era molta carne sul fuoco che stava bruciando. Purtroppo, ti sei scottato. La prossima volta forse riuscirai ad arrivare alla carne senza bruciarti.

Oppure rovescio il barbecue 😄

 

  • Haha 1
×
×
  • Crea nuovo...