Architettura degli elaboratori

Messaggioda sara09 » 21/01/2020, 17:58

data una funzione f(A,B,C)=(AB)+(BC)* di determini la funzione g(A,B,C,D) tale che f+g=1 e f•g=0

Per f+g =1, ho considerato (AB)*+(BC)*
Mentre per f•g non vale
Potete aiutarmi a risolverlo
Grazie mille ☺️
Ultima modifica di sara09 il 22/01/2020, 12:28, modificato 2 volte in totale.
sara09
Junior Member
Junior Member
 
Messaggio: 155 di 170
Iscritto il: 11/02/2019, 19:04

Re: Architettura degli elaboratori

Messaggioda apatriarca » 21/01/2020, 20:33

Ciao sara09, potresti chiarire un attimo le notazioni utilizzate? Stiamo parlando di algebra Booleana? Che significano gli operatori che hai usato (alcuni mi sono chiari ma altri meno).

Grazie
apatriarca
Moderatore
Moderatore
 
Messaggio: 5344 di 5389
Iscritto il: 08/12/2008, 20:37
Località: Londra

Re: Architettura degli elaboratori

Messaggioda sara09 » 22/01/2020, 08:41

apatriarca ha scritto:Ciao sara09, potresti chiarire un attimo le notazioni utilizzate? Stiamo parlando di algebra Booleana? Che significano gli operatori che hai usato (alcuni mi sono chiari ma altri meno).

Grazie


Ah si scusa...e l’Algeria di boole e :
A*= A negato
F e g sono due funzioni
sara09
Junior Member
Junior Member
 
Messaggio: 156 di 170
Iscritto il: 11/02/2019, 19:04

Re: Architettura degli elaboratori

Messaggioda apatriarca » 22/01/2020, 08:48

Inizia a scrivere la tabella della verità per f e g. Il valore di g per ogni riga sarà determinato dalle tue due condizioni. Una volta costruita la tabella della verità puoi cercare di dare una definizione più compatta per g.
apatriarca
Moderatore
Moderatore
 
Messaggio: 5345 di 5389
Iscritto il: 08/12/2008, 20:37
Località: Londra

Re: Architettura degli elaboratori

Messaggioda sara09 » 22/01/2020, 09:08

apatriarca ha scritto:Inizia a scrivere la tabella della verità per f e g. Il valore di g per ogni riga sarà determinato dalle tue due condizioni. Una volta costruita la tabella della verità puoi cercare di dare una definizione più compatta per g.

Ok per f va bene ma per g come scrivo la tabella di verità?
sara09
Junior Member
Junior Member
 
Messaggio: 157 di 170
Iscritto il: 11/02/2019, 19:04

Re: Architettura degli elaboratori

Messaggioda apatriarca » 22/01/2020, 10:17

Usando le due condizioni che hai scritto che legano \(f\) e \(g\). Non mi è chiaro l'operatore della seconda condizione (è semplicemente un AND?) ma per la prima hai che:
\[ f + g = 1 \implies \text{se } f = 0 \text{ allora } g = 1. \]
Usando la seconda condizione puoi stabilire il valore di \(g\) quando \(f\) è \(1\).
apatriarca
Moderatore
Moderatore
 
Messaggio: 5346 di 5389
Iscritto il: 08/12/2008, 20:37
Località: Londra

Re: Architettura degli elaboratori

Messaggioda sara09 » 22/01/2020, 11:43

apatriarca ha scritto:Usando le due condizioni che hai scritto che legano \(f\) e \(g\). Non mi è chiaro l'operatore della seconda condizione (è semplicemente un AND?) ma per la prima hai che:
\[ f + g = 1 \implies \text{se } f = 0 \text{ allora } g = 1. \]
Usando la seconda condizione puoi stabilire il valore di \(g\) quando \(f\) è \(1\).

Si (•) sta per and ma l’esercizio vuole g scritta come f non capisco perché usi f+g=1 e f*g=0 che poi si è vero che
F+g=1—->f=0 e g=1
Ma può essere anche:
F=1 e g=0


Mi sa che ho risolto in questo modo:
F(ABC)=AB+(BC)*
So che, in generale:
B+B*=1
Allora considero:
G(ABC)=(AB)*+BC
da ciò:
AB+(AB)*+BC+(BC)*=(AB+(AB)*)+(BC+(BC)*)= 1+1=1
Poi
f•g=0
Allora considero:
m=(AB)*+BC
Da cui ho
AB(AB)*+(BCAB)*+BCAB+ BC(BC)*=0+(BCAB)*+ BCAB+0
Applico de Morgan:
(BCAB)**•(BCAB)*
Da cui:
BCAB•(BCAB)=0
**= doppio negato
*=negato
Però comunque non mi trovo perché dovrei avere:
G(A,B,C,D)
sara09
Junior Member
Junior Member
 
Messaggio: 158 di 170
Iscritto il: 11/02/2019, 19:04

Re: Architettura degli elaboratori

Messaggioda apatriarca » 23/01/2020, 00:49

Le condizioni \(f + g = 1\) e \( fg = 0 \) implicano che quando \(f = 0\) allora \(g = 1\) (per la prima condizione) e quando \(f = 1\) allora \(g = 0\) (per la seconda condizione). Hai quindi che
\[ g = f^* = \bigl( (AB)+(BC)^* \bigr)^* = (AB)^*(BC) = (A^* + B^*)(BC) = A^*BC + B^*BC = A^*BC \]

Per quanto riguarda la tua soluzione, ha commesso un errore nel semplificare \( (BC)^*(AB)^* \) come \( (BCAB)^* \). Un controesempio per vedere che non è vero si ha quando \(A=1, B=1, C=0\). In questo caso hai che \( (10)^*(11)^* = 10 = 0 \) mentre \( (1011)^* = 1 \).
apatriarca
Moderatore
Moderatore
 
Messaggio: 5347 di 5389
Iscritto il: 08/12/2008, 20:37
Località: Londra

Re: Architettura degli elaboratori

Messaggioda sara09 » 23/01/2020, 08:32

sara09 ha scritto:
apatriarca ha scritto:Usando le due condizioni che hai scritto che legano \(f\) e \(g\). Non mi è chiaro l'operatore della seconda condizione (è semplicemente un AND?) ma per la prima hai che:
\[ f + g = 1 \implies \text{se } f = 0 \text{ allora } g = 1. \]
Usando la seconda condizione puoi stabilire il valore di \(g\) quando \(f\) è \(1\).

Si (•) sta per and ma l’esercizio vuole g scritta come f non capisco perché usi f+g=1 e f*g=0 che poi si è vero che
F+g=1—->f=0 e g=1
Ma può essere anche:
F=1 e g=0


Mi sa che ho risolto in questo modo:
F(ABC)=AB+(BC)*
So che, in generale:
B+B*=1
Allora considero:
G(ABC)=(AB)*+BC
da ciò:
AB+(AB)*+BC+(BC)*=(AB+(AB)*)+(BC+(BC)*)= 1+1=1
Poi
f•g=0
Allora considero:
m=(AB)*+BC
Da cui ho
AB(AB)*+(BCAB)*+BCAB+ BC(BC)*=0+(BCAB)*+ BCAB+0
Applico de Morgan:
(BCAB)**•(BCAB)*
Da cui:
BCAB•(BCAB)*=0
**= doppio negato
*=negato
Però comunque non mi trovo perché dovrei avere:
G(A,B,C,D)

Ho coretto...come ho fatto io è corretto
sara09
Junior Member
Junior Member
 
Messaggio: 159 di 170
Iscritto il: 11/02/2019, 19:04

Re: Architettura degli elaboratori

Messaggioda sara09 » 23/01/2020, 08:41

apatriarca ha scritto:Le condizioni \(f + g = 1\) e \( fg = 0 \) implicano che quando \(f = 0\) allora \(g = 1\) (per la prima condizione) e quando \(f = 1\) allora \(g = 0\) (per la seconda condizione). Hai quindi che
\[ g = f^* = \bigl( (AB)+(BC)^* \bigr)^* = (AB)^*(BC) = (A^* + B^*)(BC) = A^*BC + B^*BC = A^*BC \]

Per quanto riguarda la tua soluzione, ha commesso un errore nel semplificare \( (BC)^*(AB)^* \) come \( (BCAB)^* \). Un controesempio per vedere che non è vero si ha quando \(A=1, B=1, C=0\). In questo caso hai che \( (10)^*(11)^* = 10 = 0 \) mentre \( (1011)^* = 1 \).

Scusami ma quindi la somma di f e g e data da
A*BC+A(BC*)
?
sara09
Junior Member
Junior Member
 
Messaggio: 160 di 170
Iscritto il: 11/02/2019, 19:04


Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 13 ospiti