Codice associato al piano di Fano. perché non è lineare???
Se ho il (7,16,3) codice binario, devo provare che è perfetto ma non lineare... che sia perfetto è immediato (infatti la distanza minima è 3 quindi dispari e per il teorema dell'impacchettamento delle sfere soddisfa anche la condizione richiesta). invece non riesco a dimostrare perchè esso non è lineare.
Elenco di sotto tutte le parole del codice:
C=(1101000,
1010010,
0001110,
1000101,
0100011,
0011001,
0110100,
inoltre ci stanno tutti i complementari (ottenuti scambiando per ogni parola 0 con 1 e viceversa) e le due parole
000000,
111111)
ora, se fosse lineare C dovrebbe essere un sottospazio vettoriale e quindi chiuso rispetto all'addizione e alla moltiplicazione per uno scalare. inoltre deve avere le proprietà di gruppo additivo quindi: deve contenere l'elemento nullo (000000), + deve essere associativa, esiste l'opposto di ogni elemento (e questo è ovvio perchè ogni elemento è l'opposto di se stesso).
Non ho trovato ancora un controesempio che mi mostri che non sia chiuso rispetto all'addizione o che non valga la proprietà associativa... eppure certamente questo codice non deve esserel lineare
Elenco di sotto tutte le parole del codice:
C=(1101000,
1010010,
0001110,
1000101,
0100011,
0011001,
0110100,
inoltre ci stanno tutti i complementari (ottenuti scambiando per ogni parola 0 con 1 e viceversa) e le due parole
000000,
111111)
ora, se fosse lineare C dovrebbe essere un sottospazio vettoriale e quindi chiuso rispetto all'addizione e alla moltiplicazione per uno scalare. inoltre deve avere le proprietà di gruppo additivo quindi: deve contenere l'elemento nullo (000000), + deve essere associativa, esiste l'opposto di ogni elemento (e questo è ovvio perchè ogni elemento è l'opposto di se stesso).
Non ho trovato ancora un controesempio che mi mostri che non sia chiuso rispetto all'addizione o che non valga la proprietà associativa... eppure certamente questo codice non deve esserel lineare
Risposte
non conosco l'argomento, ma, se si tratta di addizione binaria, la somma di due numeri qualsiasi del tuo elenco che iniziano per 1 avrebbe 8 cifre ... ,
mentre mi pare che i numeri siano tutti di 7 cifre ...
non saprei aiutarti di più. ciao.
mentre mi pare che i numeri siano tutti di 7 cifre ...
non saprei aiutarti di più. ciao.
Grazie per la risposta!
però gli elementi sono definiti in Z2, quindi sommando due parole la lunghezza rimane la stessa in quanto 1+1=0.
però gli elementi sono definiti in Z2, quindi sommando due parole la lunghezza rimane la stessa in quanto 1+1=0.
prego, e benvenuto nel forum.
... quindi la somma si intende cifra per cifra ...
e la moltiplicazione per uno scalare come funziona?
... quindi la somma si intende cifra per cifra ...
e la moltiplicazione per uno scalare come funziona?
grazie... la oltiplicazione per uno scalare in questo caso è banale perchè consiste nel moltiplicare ogni parola del codice per uno dei due valori del campo Z2 e cioè 0 e 1, e intrambi i casi la parola continua ad appartenere al codice! ma io non riesco a capire quale delle proprietà non è verificata in C per essere non-lineare... ci sto perdendo la testa credimi...
c'è una cosa che non mi convince: se il cosiddetto "opposto" è quello che tu hai chiamato "complementare", l'elemento nullo sarebbe 1111111 e non 0000000.
che cosa mi sfugge?
che cosa mi sfugge?
no, l'opposto di ogni elemento è l'elemento stesso (infatti un elemento sommato a se stesso mi restituisce il vettore nullo), mentre il complementare ad es di 1001010 è 0110101.
sì, è quello che intendevo (nel senso che non poteva essere l'opposto il complementare...). certo però mi suona strano che ogni elemento è opposto di se stesso.
comunque tu sei certo che non sia lineare?
EDIT:
ho visto che hai proposto lo stesso quesito in più parti. ti faccio notare che il multiposting è vietato.
ti invito a dare un'occhiata al regolamento: https://www.matematicamente.it/forum/reg ... 26457.html
ho chiuso ora il topic in questa stessa sezione. potresti tu stesso cancellare quello nella sezione "il nostro forum".
ciao.
comunque tu sei certo che non sia lineare?
EDIT:
ho visto che hai proposto lo stesso quesito in più parti. ti faccio notare che il multiposting è vietato.
ti invito a dare un'occhiata al regolamento: https://www.matematicamente.it/forum/reg ... 26457.html
ho chiuso ora il topic in questa stessa sezione. potresti tu stesso cancellare quello nella sezione "il nostro forum".
ciao.
si scusami... provvedo subito... essendo nuovo non ho ancora molta dimistichezza.
Grazie.
Non riesco a trovare un controesempio ma la possibilità sono troppe per farlo ora a meno. Prova a cercarlo attraverso un programmino al pc (in c o pyton)...
La risposta è semplice:
La condizione necessaria affichè il codice sia lineare è che le operazioni di addizione e moltiplicazione in S (dove S è l'insieme di tutte le parole) debbano essere interne a tale insieme
ovvero se prendi 2 parole del codice dell'insieme S e poi le sommi, ottieni ancora una parola appartenente ad S?
Credo proprio di no, perchè
1010010+0001110=1011100 , le prime due parole al primo membro appartengono al codice, mentre la loro somma no, quindi il tuo codice non è lineare.
La condizione necessaria affichè il codice sia lineare è che le operazioni di addizione e moltiplicazione in S (dove S è l'insieme di tutte le parole) debbano essere interne a tale insieme
ovvero se prendi 2 parole del codice dell'insieme S e poi le sommi, ottieni ancora una parola appartenente ad S?
Credo proprio di no, perchè
1010010+0001110=1011100 , le prime due parole al primo membro appartengono al codice, mentre la loro somma no, quindi il tuo codice non è lineare.
@ picozzi
la parola trovata come risultato della somma è la duale della seguente
0100011
che invece è presente (e dunque è presente anche 1011100)
come controesempio non funziona.
spero che, una volta chiarito che le parole sono 16 e non 8, tu riesca a trovare un valido controesempio.
ciao.
la parola trovata come risultato della somma è la duale della seguente
0100011
che invece è presente (e dunque è presente anche 1011100)
come controesempio non funziona.
spero che, una volta chiarito che le parole sono 16 e non 8, tu riesca a trovare un valido controesempio.
ciao.
allora
1101000+1010010=0101010
Ricorda, affinchè si possa parlare di strutture algebriche di tipo gruppo, le operazioni
1) devono essere interne al sostegno (e' la prima cosa che devi controllare)
2) associative
3) l'elemento neutro deve appartenere al sostegno
4) tutti gli opposti rispetto alle operazioni appartengono al sostegno.
Grazie, ciao
1101000+1010010=0101010
Ricorda, affinchè si possa parlare di strutture algebriche di tipo gruppo, le operazioni
1) devono essere interne al sostegno (e' la prima cosa che devi controllare)
2) associative
3) l'elemento neutro deve appartenere al sostegno
4) tutti gli opposti rispetto alle operazioni appartengono al sostegno.
Grazie, ciao
1101000+1010010=0101010
mi pare che la somma sia
1101000+1010010=0111010
in base alle regole nella pagina precedente.
controllare se il risultato appartiene all'insieme C.
ciao.
EDIT: è il duale di 1000101
insomma l'esame è andato... non mi ha chiesto questo argomento, cmq sarei curioso di leggere un controesempio di parola che non appartiene al codice... in verità il mio prof. mi ha detto che la proprietà che viene a mancare è l'associativa e mi ha detto esplicitamente: "se non ci crede faccia tutte le prove e si accorgerà che per almeno una terna di parole non vale la proprietà associativa". non sono rimasto molto convinto della risposta, visto che io avrei detto che l'operazione è banalmente associativa. se potete contribuite a togliermi questo dubbio. grazie a tutti voi in ogni caso.
auguri per l'esame.
però, se l'operazione è definita carattere per carattere come ho capito, non può non essere associativa.
schematicamente, si possono scrivere le tre cifre da sommare come le 8 parole di 3 caratteri sull'alfabeto {0,1}, perché possono rappresentare le cifre nella stessa posizione dei tre numeri da sommare:
111, 110, 101, 011, 100, 010, 001, 000.
in tutti i casi, sia sommando prima le prime due cifre e poi il risultato con la terza, sia sommando prima le ultime due cifre e poi la prima con il risultato precedente, si ottiene sempre lo stesso numero, cioè 0 se gli 1 sono 0 o 2, e 0 se gli 1 sono 1 o 3. provare per credere. ciao.
però, se l'operazione è definita carattere per carattere come ho capito, non può non essere associativa.
schematicamente, si possono scrivere le tre cifre da sommare come le 8 parole di 3 caratteri sull'alfabeto {0,1}, perché possono rappresentare le cifre nella stessa posizione dei tre numeri da sommare:
111, 110, 101, 011, 100, 010, 001, 000.
in tutti i casi, sia sommando prima le prime due cifre e poi il risultato con la terza, sia sommando prima le ultime due cifre e poi la prima con il risultato precedente, si ottiene sempre lo stesso numero, cioè 0 se gli 1 sono 0 o 2, e 0 se gli 1 sono 1 o 3. provare per credere. ciao.