L’algebra di Clifford e il rasoio di Occam

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Calcolo vettoriale E.F. Orsega – Università Ca’ Foscari di Venezia
Introduzione al linguaggio R
CORSO DI RECUPERO CONTROLLI AUTOMATICI Prof. Filippo D’Ippolito
I SISTEMI LINEARI.
Informatica Generale Marzia Buscemi IMT Lucca
Modulo 4 – Seconda Parte Foglio Elettronico
Sistema di riferimento sulla retta
Introduzione al linguaggio R
Classe III A A.s – 2010 Programma di Informatica
Classe IV B A.s – 2009 Programma di Informatica 6 ore (3 laboratorio) Docenti –Prof. Alberto Ferrari –Prof. Alberto Paganuzzi.
Classe III A A.s – 2011 Programma di Informatica 5 ore settimanali (3 laboratorio) Docenti –Prof. Alberto Ferrari –Prof. Alberto Paganuzzi.
Rappresentazioni numeriche
Capitolo 4 Trasformazioni Geometriche
Autovalori e autovettori
Geometria analitica dello spazio
COORDINATE POLARI Sia P ha coordinate cartesiane
LE MATRICI.
Il campo elettrico - Lo chiamiamo campo elettrico,
Marina Cobal - Dipt.di Fisica - Universita' di Udine
ELETTROMAGNETISMO APPLICATO ALL'INGEGNERIA ELETTRICA ED ENERGETICA
Algebra Lineare. Algebra Lineare Esercizio Dato il vettore a := (3, 2, 5) , scrivere l’equazione cartesiana del piano  passante per.
Teoria e Tecniche del Riconoscimento
ESEMPI DI ARCHITETTURE DI DAC
VETTORI.
Informatica 3 Codifica binaria.
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
SISTEMI D’EQUAZIONI ED EQUAZIONI DIFFERENZIALI LINEARI.
Costruzione di Interfacce Lezione 4 Nozioni di geometria per la grafica
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Progetto PON SIAMO TUTTI STATISTICI
Sistema di riferimento su una retta
Esistono 10 tipi di persone al mondo: Quelli che conoscono il codice binario & Quelli che non lo conoscono.
Seminario su clustering dei dati – Parte II
Rappresentazione binaria dei numeri interi senza segno.
Alternative al Paradigma Rappresentazionale
SIMMETRIA MOLECOLARE.
Introduzione al linguaggio R
Napoa Azione 4 – Gruppo B7 1.Risultati della somministrazione 2002: M2 Vamio Analisi item test di profitto rispetto ai contenuti riferiti ai temi ministeriali.
Cos’è un problema?.
Elaborazione (digitale) delle immagini
Programma del corso Dati e loro rappresentazione Architettura di un calcolatore Sistemi operativi Linguaggi di programmazione Applicativi: - fogli elettronici.
Spazi vettoriali astratti Somma e prodotto di n-ple Struttura di R n.
si modificano le forme con operatori locali;
TRASFORMAZIONI GEOMETRICHE Prof. Amelia Vavalli.
Precorso di Fisica 2011/2012 Facoltà di Agraria
TRASFORMAZIONI GEOMETRICHE
ANALISI FATTORIALE. Cosè lanalisi fattoriale? Statistica descrittiva Rappresentazione delle variabili in studio. Statistica confermativa vs Confermare,
Le trasformazioni Daniele Marini.
Corso di Informatica - Foglio elettronico - Raffaele Grande
Classificazione e storia del giusnaturalismo
Controllare le proiezioni
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Trasformazioni Daniele Marini.
Corso Di Programmazione Grafica
Rotazioni e quaternioni
Linguaggi e Programmazione per l’Informatica Musicale
Vettori dello spazio bidimensionale (R 2)
Corso di Matematica (6 CFU) (4 CFU Lezioni +2 CFU Esercitazioni)
Teoria dei sistemi Autore: LUCA ORRU'.
Classe IV A A.s – 2013 Programma di Informatica 5 ore (3 laboratorio) Docenti –Prof. Alberto Ferrari –Prof. Alberto Paganuzzi.
SISTEMI di RIFERIMENTO PIANI
Vettori A B VETTORE è un segmento orientato caratterizzato da: C D
Definizione Si dice che la variabile z è una funzione reale di due variabili x e y, nell’insieme piano D, quando esiste una legge di natura qualsiasi che.
Prof. Giovanni Ianne I vettori.
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Transcript della presentazione:

L’algebra di Clifford e il rasoio di Occam Giorgio Vassallo Silvia Franchini Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Conoscenza e modelli La conoscenza scientifica si fonda sulla creazione e la validazione di modelli e paradigmi in grado di codificare e interpretare sia concetti astratti che dati sperimentali. E’ possibile definire formalmente la qualità di un modello/paradigma? Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il Rasoio di Occam Il principio logico del rasoio di Occam afferma il valore della semplicità e della sinteticità. Tra i diversi modelli che consentono di spiegare un dato fenomeno, si deve preferire il modello più semplice, che non introduce enti inutili. “Pluralitas non est ponenda sine necessitate” “Frustra fit per plura quod potest fieri per pauciora” “Entia non sunt multiplicanda praeter necessitatem” Guglielmo di Occam Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Formalizzazione del rasoio di Occam La qualità di un modello è definita da: Aderenza ai dati e concetti che si vogliono codificare o interpretare (misura di distanza delle informazioni fornite dal modello rispetto alle informazioni attese, es. dati sperimentali) Complessità (numero di assi concettuali, paradigmi, postulati, parametri, variabili necessari alla costruzione del modello) Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Modelli di massima entropia Principio della Massima Entropia o MaxEnt (E. T. Jaines) “In presenza di dati e/o evidenze sperimentali riguardanti un ben determinato fenomeno fisico o statistico, per stimarne la relativa distribuzione di probabilità, è sufficiente scegliere un modello che sia [il più possibile] consistente con i dati disponibili ma che altrove abbia la massima entropia.” Si massimizza cioè l’incertezza assunta sui parametri del sistema non noti ottenendo dei modelli basati solo su dati certi. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

I modelli della conoscenza scientifica La conoscenza scientifica si fonda sul linguaggio matematico. Dal punto di vista strettamente epistemologico, seguendo il principio del rasoio di Occam, è fondamentale, quindi, utilizzare un linguaggio ottimale in termini di semplicità e universalità. Ad esempio, il paradigma classico per formalizzare i concetti della geometria e della fisica mette insieme una serie di simbolismi e linguaggi matematici diversi che violano il principio di massima semplicità portando ad una costosa e pesante frammentazione della conoscenza. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il paradigma classico Il paradigma tradizionalmente usato per formalizzare i concetti della geometria e della fisica è fondato sull’algebra lineare. L’algebra lineare classica utilizza un insieme limitato di elementi (scalari e vettori) che sono manipolati attraverso un insieme limitato di operatori (prodotto scalare, definito per tutte le dimensioni, e prodotto vettoriale, definito solo in tre dimensioni). Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il paradigma classico Le limitazioni dell’algebra lineare hanno portato alla formulazione di tanti micro-modelli separati e alla creazione di una Babele di linguaggi matematici diversi: Numeri complessi Quaternioni Algebra vettoriale Matrici di Dirac Coordinate di Plücker Coordinate omogenee Spinori Forme differenziali Trasformazioni di Lorentz Equazioni di Maxwell Ognuno di questi sistemi matematici ha dei vantaggi rispetto agli altri in qualche specifico dominio applicativo. Per esempio, per le rotazioni, i quaternioni sono più efficienti rispetto ai metodi vettoriali e matriciali. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il paradigma classico Gli stessi concetti sono rappresentati in tanti sistemi diversi. Ciò comporta costi enormi in termini delle necessarie traduzioni per passare da una rappresentazione all’altra. Tutte le algebre usate per modellare la fisica e la geometria si possono rappresentare come algebre di matrici. Le matrici nascondono la semantica delle informazioni, per esempio il significato geometrico delle informazioni codificate. Ad esempio, le matrici ortogonali per rappresentare le rotazioni nascondono il piano e l’angolo di rotazione. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Un nuovo paradigma La complessità introdotta dal formalismo classico basato sull’algebra lineare con la sua miriade di micro- modelli e la sua Babele di linguaggi matematici diversi è necessaria? Esiste un paradigma capace di unificare tutti questi micro-linguaggi in un contesto unico? Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Una risposta ottimale: l’Algebra di Clifford L’Algebra di Clifford (o Algebra geometrica) risponde pienamente al principio di Occam in quanto Introduce un formalismo unico ed estremamente semplice. Fornisce un modello semplificato e un linguaggio matematico unificante per la codifica della conoscenza. Reinterpreta ed integra diversi linguaggi e termini scientifici in un unico contesto. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Due semplici postulati ! L’algebra di Clifford è fondata su questi due semplici postulati, ovvero gli assiomi del prodotto geometrico. Le caratteristiche e le potenzialità dell’algebra derivano esclusivamente da questi due assiomi. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Prodotto geometrico Dati due vettori a e b, il loro prodotto geometrico è la somma del prodotto interno ab e del prodotto esterno a∧b. Il prodotto geometrico (o prodotto di Clifford) è il prodotto fondamentale introdotto da Clifford, dal quale è possibile derivare tutti gli altri prodotti. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Prodotto geometrico a = a0e0+a1e1+a2e2+a3e3 b = b0e0+b1e1+b2e2+b3e3 a0 scalare bivettore a0 a1 a2 a3 b0 b1 b2 b3 ab = (a0b0+a1b1+a2b2+a3b3) + (a0b1 – a1b0)e0e1+ (a0b2 – a2b0)e0e2 + (a0b3 – a3b0)e0e3 + (a1b2 – a2b1)e1e2 + (a1b3 – a3b1)e1e3 + (a2b3 – a3b2)e2e3 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Prodotto interno e prodotto esterno Il prodotto interno di due vettori coincide con il classico prodotto scalare. Il prodotto esterno (o wedge product) di due vettori può essere interpretato geometricamente come un segmento di piano orientato ed è chiamato bivettore. A differenza del prodotto vettoriale a × b, il prodotto esterno è definito per qualsiasi dimensione. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Blades Il prodotto esterno di tre vettori può essere interpretato geometricamente come un elemento di volume orientato ed è chiamato trivettore. In generale, il prodotto esterno di k vettori è un sottospazio orientato a k dimensioni ed è chiamato blade di grado k o k-blade. a∧b∧c Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Multivettori In uno spazio ad n dimensioni le blades sono in tutto 2n, mentre il numero di blades di grado k è pari a Gli elementi generali dell’algebra di Clifford sono detti multivettori. Il multivettore dell’algebra di Clifford ad n dimensioni è una combinazione lineare con coefficienti reali delle 2n blades di base. Nello spazio 2D il multivettore ha la forma: Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Codifica binaria delle blades Blades 4D Maschera di bit 1 0000 e0 0001 e1 0010 e0e1 0011 e2 0100 e0e2 0101 e1e2 0110 e0e1e2 0111 e3 1000 e0e3 1001 e1e3 1010 e0e1e3 1011 e2e3 1100 e0e2e3 1101 e1e2e3 1110 e0e1e2e3 1111 Il prodotto geometrico di due blades è lo XOR delle due maschere di bit corrispondenti Esempio: e0e1 * e1e2e3 = e0e2e3 0011  1110 = 1101 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Prodotto geometrico Qual è il significato geometrico del prodotto geometrico? Se a e b sono ortogonali (ab=0) Se a e b sono collineari (a∧b=0) Il prodotto geometrico dà una misura della direzione relativa di due vettori. Commutatività => Vettori collineari Anticommutatività => Vettori ortogonali Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Numeri complessi L’algebra dei numeri complessi è isomorfa all’algebra di Clifford ad 1 dimensione con signature − L’algebra dei numeri complessi è pure isomorfa alla sottoalgebra di grado pari dell’algebra di Clifford a 2 dimensioni con signature ++ Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il bivettore i La moltiplicazione per i ruota i vettori di un angolo retto: i, come operatore, rappresenta una rotazione di un angolo retto. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Quaternioni L’algebra dei quaternioni è isomorfa all’algebra di Clifford a 2 dimensioni con signature − − L’algebra dei quaternioni è pure isomorfa alla sottoalgebra pari dell’algebra di Clifford a 3 dimensioni con signature +++ Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Riflessioni Riflessione di un vettore a in un piano con normale m Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Riflessioni Dimostrazione Pre-moltiplichiamo e post-moltiplichiamo a per m e invertiamo di segno Essendo si ottiene da cui Essendo ed m ortogonali e a|| ed m collineari, si ha da cui Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Riflessioni Dimostrazione (cont.) Essendo m2 = 1 si ottiene Ma per cui Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Rotazioni Rotazione di un vettore a La rotazione del vettore a si può ottenere attraverso due riflessioni in due piani con normali m ed n, dove il bivettore m∧n è il piano di rotazione e l’angolo θ tra i due vettori m ed n è la metà dell’angolo di rotazione. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Prima riflessione Seconda riflessione da cui è il rotore Rotazioni Prima riflessione Seconda riflessione da cui è il rotore Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Regola di Cramer Utilizzando l’algebra di Clifford, si ottiene una dimostrazione semplice e immediata della regola di Cramer per la soluzione di un sistema di equazioni lineari. Sia dato un sistema di equazioni lineari: Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Regola di Cramer Pre-moltiplichiamo e post-moltiplichiamo per dove il pedice i indica l’assenza del termine Semplificando in base alle regole del prodotto esterno, si ottiene: Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Regola di Cramer Essendo con al posto di si ottiene che è proprio la regola di Cramer. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Equazioni di Maxwell ρ☐ è la quadridensità di carica Algebra dello spazio-tempo ovvero Algebra di Clifford 4D con metrica di Minkowski J☐ è la quadricorrente ρ☐ Hxy Hxz Ext -Hxy Hyz Eyt -Hxz -Hyz Ezt -Ext -Eyt -Ezt I è lo pseudoscalare dello spazio 4D Le 4 equazioni di Maxwell si riducono ad una sola. simile all’equ. di Dirac con m = 0 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Equazione di Dirac Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Applicazioni dell’algebra di Clifford Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Un po’ di storia Hermann Grassmann (1809-1877) W. K. Clifford, “On the Classification of Geometric Algebras”, Mathematical Papers, R. Tucker, ed., pp. 397-401, Macmillian, 1882. William K. Clifford (1845-1879) William R. Hamilton (1805-1865) D. Hestenes, “New Foundations for Classical Mechanics”, Kluwer Academic, 1986. D. Hestenes, G. Sobczyk, “Clifford Algebra to Geometric Calculus: A Unified Language for Mathematics and Physics”, Kluwer Academic, 1987. D. Hestenes, “Oersted Medal Lecture 2002: Reforming the Mathematical Language of Physics”. David Hestenes (1933-) Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Un po’ di storia (2) Leo Dorst L. Dorst, S. Mann, “Geometric Algebra: A Computational Framework for Geometrical Applications (Part 1: Algebra),” IEEE Computer Graphics and Applications, vol. 22, no. 3, pp. 24-31, May/June 2002. L. Dorst, S. Mann, “Geometric Algebra: A Computational Framework for Geometrical Applications (Part 2: Applications),” IEEE Computer Graphics and Applications, vol. 22, no. 4, pp. 58-67, July/Aug. 2002. L. Dorst, D. Fontijne, S. Mann, “Geometric Algebra for Computer Science: An Object Oriented Approach to Geometry”, Morgan Kaufmann, 2007. Stephen Mann Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Ambiti applicativi Computer grafica Visione artificiale Algebra di Clifford Robotica Elaborazione di immagini Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Coprocessori grafici innovativi Le attuali schede video utilizzano, per le elaborazioni grafiche tridimensionali, i modelli geometrici tradizionali basati sull’algebra lineare e sui calcoli matriciali. Il nuovo paradigma fondato sull’algebra di Clifford consente lo sviluppo di coprocessori grafici innovativi. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

L’algebra di Clifford e la computer grafica Per le applicazioni grafiche si utilizzano le algebre di Clifford 4D e 5D. Le algebre di Clifford 4D e 5D rappresentano i modelli più potenti della geometria euclidea tridimensionale: Modello omogeneo (coordinate omogenee) Modello conforme Modello omogeneo (coordinate omogenee) Algebra di Clifford 4D Modello conforme Algebra di Clifford 5D Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Il modello omogeneo Gli oggetti geometrici sono rappresentati direttamente dagli elementi dell’algebra 4D 1 3 2 4 L’intersezione di due rette si ottiene applicando semplicemente l’operatore “meet” ai due bivettori Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

X può essere di qualsiasi dimensione ! Il modello conforme Tutti gli oggetti geometrici (compresi cerchi e sfere) sono rappresentati direttamente dagli elementi dell’algebra 5D Tutte le operazioni geometriche conformi (rotazioni, traslazioni, dilatazioni) si ottengono attraverso il prodotto geometrico con operatori detti versori Punto= c ∧ ∞ Retta= a ∧ c ∧ ∞ Cerchio= a ∧ b ∧ c Piano= a ∧ b ∧ c ∧ ∞ Sfera= a ∧ b ∧ c ∧ d X può essere di qualsiasi dimensione ! Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Implementazioni dell’algebra di Clifford Lo sviluppo di coprocessori grafici basati sull’algebra di Clifford richiede la ricerca di implementazioni efficienti dal punto di vista computazionale delle algebre di Clifford 4D e 5D Implementazioni esistenti: Implementazioni software Implementazioni hardware Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Algebra di Clifford 4D Un generico multivettore dell’algebra di Clifford 4D contiene 24 = 16 blades, dove ogni blade è una coppia coefficiente-blade di base Come è possibile rappresentare le blades del generico multivettore? m = s0+ a0e0+a1e1+a2e2+a3e3+ a01e0e1+a02e0e2+a03e0e3+a12e1e2+a13e1e3+a23e2e3+ a012e0e1e2+a013e0e1e3+a023e0e2e3+a123e1e2e3+ a0123e0e1e2e3 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Codifica binaria delle blades Blades 4D Maschera di bit 1 0000 e0 0001 e1 0010 e0e1 0011 e2 0100 e0e2 0101 e1e2 0110 e0e1e2 0111 e3 1000 e0e3 1001 e1e3 1010 e0e1e3 1011 e2e3 1100 e0e2e3 1101 e1e2e3 1110 e0e1e2e3 1111 Il prodotto geometrico di due blades è lo XOR delle due maschere di bit corrispondenti Esempio: e0e1 * e1e2e3 = e0e2e3 0011  1110 = 1101 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Una rappresentazione orientata all’hardware Qual è la migliore rappresentazione degli elementi dell’algebra di Clifford nell’ottica di una esecuzione delle operazioni di Clifford direttamente in hardware? La rappresentazione naturale, basata sugli elementi omogenei, ha il difetto di utilizzare elementi di dimensione variabile. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Elementi omogenei spazio 4D multivettore 4D – rappresentazione basata su elementi omogenei Blades 1 e0 e1 e2 e3 e0e1 e0e2 e0e3 e1e2 e1e3 e2e3 e0e1e2 e0e1e3 e0e2e3 e1e2e3 e0e1e2e3 m = (s, v, b, t, p) Blades Elemento omogeneo 1 scalare (s) e0 e1 e2 e3 vettore (v) e0e1 e0e2 e0e3 e1e2 e1e3 e2e3 bivettore (b) e1e2e3 e0e2e3 e0e1e3 e0e1e2 trivettore (t) e0e1e2e3 pseudoscalare (p) Necessità di una rappresentazione più compatta Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Una rappresentazione di dimensione fissa Qual è il modo ottimo di posizionare le 16 blades del multivettore 4D in una matrice 4x4? 1 e0 e1 e2 e3 e0e1 e0e2 e0e3 e1e2 e1e3 e2e3 e0e1e2 e0e1e3 e0e2e3 e1e2e3 e0e1e2e3 ? 24  42 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Dalle blades alle quadruplette multivettore 4D – rappresentazione basata su quadruplette Blades 1 e0 e1 e2 e3 e0e1 e0e2 e0e3 e1e2 e1e3 e2e3 e0e1e2 e0e1e3 e0e2e3 e1e2e3 e0e1e2e3 m = (V, T, S, P) Blades Quadrupletta e0 e1 e2 e3 V e1e2e3 e0e2e3 e0e1e3 e0e1e2 T 1 e0e1 e0e2 e0e3 S e0e1e2e3 e2e3 e1e3 e1e2 P vettore scalare trivettore bivettore pseudoscalare Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Quadruplette - Vantaggi Elementi di dimensione fissa Semplificazione delle operazioni algebriche Architettura hardware compatta e veloce Il prodotto di due quadruplette dà come risultato la somma di due quadruplette Tutte le operazioni di prodotto possono essere ricondotte ad un’unica operazione: prodotto di due vettori V Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Quadruplette - Vantaggi T, S e P possono essere ottenute attraverso operazioni XOR tra V e opportune maschere di bit V e0 e1 e2 e3 T e1e2e3 e0e2e3 e0e1e3 e0e1e2 Maschere di bit S 1 e0e1 e0e2 e0e3 I = e0e1e2e3  1111 W = e0  0001 Z = e1e2e3  1110 P e0e1e2e3 e2e3 e1e3 e1e2 XOR con 1111 XOR con 0001 V 0001 0010 0100 1000 XOR con 1110 T 1110 1101 1011 0111 S 0000 0011 0101 1001 P 1111 1100 1010 0110 Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Quadruplette - Vantaggi Il prodotto di due quadruplette dà come risultato la somma di due quadruplette Formato unico per i dati di input e di output * V T S P S + P V + T Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Quadruplette - Vantaggi Tutte le operazioni di prodotto tra due quadruplette di qualsiasi tipo possono essere ricondotte ad un prodotto tra due vettori T S Pre-processing IrT=V V=SW Vector_Product S + P Post-processing I (S + P) Wr 4 + Le due quadruplette sono trasformate in due vettori attraverso uno stadio di pre-processing che consiste in semplici cambiamenti di segno dei coefficienti Si esegue il prodotto geometrico dei due vettori Le due quadruplette del risultato sono ottenute attraverso uno stadio di post-processing che consiste in semplici operazioni di cambiamenti di segno e/o swapping Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Esempio V * V Esempio: T*S T S a0 a1 a2 a3 b0 b1 b2 b3 S Pre-processing  solo cambiamenti di segno V = IrT - a0 a1 - a2 a3 b0 - b1 - b2 - b3 SW = V V * V c0 c1 c2 c3 c4 c5 c6 c7 c4 c5 - c6 c7 - c0 - c1 c2 - c3 Post-processing  solo cambiamenti di segno e swapping Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Conclusioni La rappresentazione semplificata basata sull’uso delle quadruplette ha consentito lo sviluppo di un’architettura hardware veloce e compatta. E’ stata progettata e realizzata una famiglia di architetture dedicate per l’esecuzione nativa delle operazioni di Clifford 4D e 5D. I risultati sperimentali hanno mostrato un significativo aumento delle prestazioni rispetto all’esecuzione su processori general-purpose tradizionali. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Bibliografia D. Hestenes, “New Foundations for Classical Mechanics”, Kluwer Academic, 1986. D. Hestenes, G. Sobczyk, “Clifford Algebra to Geometric Calculus: A Unified Language for Mathematics and Physics”, Kluwer Academic, 1987. D. Hestenes, “Oersted Medal Lecture 2002: Reforming the Mathematical Language of Physics”. L. Dorst, S. Mann, “Geometric Algebra: A Computational Framework for Geometrical Applications (Part 1: Algebra),” IEEE Computer Graphics and Applications, vol. 22, no. 3, pp. 24-31, May/June 2002. L. Dorst, S. Mann, “Geometric Algebra: A Computational Framework for Geometrical Applications (Part 2: Applications),” IEEE Computer Graphics and Applications, vol. 22, no. 4, pp. 58-67, July/Aug. 2002. L. Dorst, D. Fontijne, S. Mann, “Geometric Algebra for Computer Science: An Object Oriented Approach to Geometry”, Morgan Kaufmann, 2007. Silvia Franchini, Giorgio Vassallo, Filippo Sorbello, “A brief introduction to Clifford algebra”, Rapporto tecnico N. 2/2010, Dipartimento di Ingegneria Informatica - Università degli Studi di Palermo, 2010, http://www.dinfo.unipa.it/~franchini/CliffTechRep.pdf. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013

Bibliografia Silvia Franchini, Antonio Gentile, Filippo Sorbello, Giorgio Vassallo, Salvatore Vitabile, “Design and implementation of an embedded coprocessor with native support for 5D, quadruple-based Clifford algebra”, IEEE Transactions on Computers, Vol. 62, No. 12, pp. 2366-2381, 2013. Silvia Franchini, Antonio Gentile, Filippo Sorbello, Giorgio Vassallo, Salvatore Vitabile, “Design Space Exploration of Parallel Embedded Architectures for Native Clifford Algebra Operations”, IEEE Design and Test of Computers, Volume 29, Issue 3, May-June 2012, pp. 60-69. Silvia Franchini, Antonio Gentile, Filippo Sorbello, Giorgio Vassallo, Salvatore Vitabile, “Fixed-size Quadruples for a New, Hardware-Oriented Representation of the 4D Clifford Algebra”, “Advances in Applied Clifford Algebras”, Volume 21, Issue 2, June 2011, pag. 315-340, Springer Basel AG. Silvia Franchini, Antonio Gentile, Filippo Sorbello, Giorgio Vassallo, Salvatore Vitabile, “An Embedded, FPGA-based Computer Graphics Coprocessor with Native Geometric Algebra Support”, Integration, The VLSI Journal, Vol. 42, No. 3, June 2009, pp. 346-355, ISSN: 0167-9260, doi: 10.1016/j.vlsi.2008.09.010. Seminario di Logica e Filosofia della Scienza Università degli Studi di Palermo 27/11/2013