applications of the matrix model of computation sergio pissanetzky

13
Applications of the Matrix Model of Computation Sergio Pissanetzky

Upload: jordan-osborne

Post on 18-Jan-2018

219 views

Category:

Documents


0 download

DESCRIPTION

The MMC is universal ●Software Engineering Object-oriented analysis and design. Object-oriented refactoring. Software development. ●Physics SCA algorithm, ontologies. From thought experiments to theories. ●Business Business applications of the MMC. ●UML MMC applications to UML models. Inheritance, polymorphism. ●Artificial Intelligence Neural networks, parallelism, training, dynamics.

TRANSCRIPT

Page 1: Applications of the Matrix Model of Computation Sergio Pissanetzky

Applications of theMatrix Model of Computation

Sergio Pissanetzky

Page 2: Applications of the Matrix Model of Computation Sergio Pissanetzky

The MMC consists of two sparse matrices: M = (C, Q) C = Matrix of Services Q = Matrix of Sequences

The model has two forms: ● imperative form

● canonical form. Matrix Q is the imperative part of the model.

Page 3: Applications of the Matrix Model of Computation Sergio Pissanetzky

The MMC is universal● Software Engineering

Object-oriented analysis and design.Object-oriented refactoring.Software development.

● PhysicsSCA algorithm, ontologies.From thought experiments to theories.

● BusinessBusiness applications of the MMC.

● UMLMMC applications to UML models.Inheritance, polymorphism.

● Artificial IntelligenceNeural networks, parallelism, training, dynamics.

Page 4: Applications of the Matrix Model of Computation Sergio Pissanetzky

A

B

C

A Business Problem

M

S

Services: Init, AM, BM, CM, AS, BS, CS, MCost, SCost

b a

Page 5: Applications of the Matrix Model of Computation Sergio Pissanetzky

actor P a b F 1 init

init M A AM init M B BM init M C CM init S A AS init S B BS init S C CS AM MCost BM MCost CM MCost AS SCost BS SCost CS SCost MCost exit SCost exit

Matrix of Sequences

R

Q =

Page 6: Applications of the Matrix Model of Computation Sergio Pissanetzky

P a b Finit M A AMinit M B BMinit M C CMinit S A ASinit S B BSinit S C CS

Relation R =

Program in C if(a==M && b==A) AM;if(a==M && b==B) BM;if(a==M && b==C) CM;if(a==S && b==A) AS;if(a==S && b==B) BS;if(a==S && b==C) CS;

Relations are code

Page 7: Applications of the Matrix Model of Computation Sergio Pissanetzky

Relations are object-orientedP a b F

init M A AMinit M B BMinit M C CMinit S A ASinit S B BSinit S C CS

Relation R =

MMC OO Model relation inheritance hierarchy

control variable base classeach allowed value derived class

sub-relation virtual method

Page 8: Applications of the Matrix Model of Computation Sergio Pissanetzky

P a k b Finit M 1 A AMinit M 1 B BMinit M 1 C CMinit S 2 A ASinit S 2 B BSinit S 2 C CS

R =

Relations support inheritance transformations

P a b Finit M 1init S 21 A AM1 B BM1 C CM2 A AS2 B BS2 C CS

R1

R2

Transformation Relational operationmultiple to single normalization, projectionsingle to multiple join

Page 9: Applications of the Matrix Model of Computation Sergio Pissanetzky

P a h b Finit M 3 A AMinit M 4 B BMinit M 5 C CMinit S 3 A ASinit S 4 B BSinit S 5 C CS

R =

● Consider control variable b.● Add foreign keys for variable b.● Project on (P, b, h) and (h, a, F).

P a b Finit A 3init B 4init C 53 M AM3 S AS4 M BM4 S BS5 M CM5 S CS

R3

R4

Case b/a

Page 10: Applications of the Matrix Model of Computation Sergio Pissanetzky

P a b Finit M 1init S 21 A AM1 B BM1 C CM2 A AS2 B BS2 C CS

AM MCost BM MCost CM MCost AS SCost BS SCost CS SCost

MCost exitSCost exit

Document

Cost(a)MListSList

AModelMList{AM}SList{AS}

BModelMList{BM}SList{BS}

CModelMList{CM}SList{CS}

MailMCost(Document d)

SpraySCost(Document d)

R1

R2

Relations support UML models

Caller initializes a.Caller constructs A/B/CModel initialize b.Caller calls Cost, passing aCost selects MList /SList a decision.MList, SList call their override b decision,calculate the list of equipment,construct a Mail or Spray object,and call their M/SCost method to calculate cost.

R2

Page 11: Applications of the Matrix Model of Computation Sergio Pissanetzky

Documentaccept(Visitor v)

AModelaccept(Visitor v){v.visitA(this)}

BModelaccept(Visitor v){v.visitB(this)}

CModelaccept(Visitor v){v.visitC(this)}

MailvisitA(AModel d){AM}visitB(BModel d){BM}visitC(CModel d){CM}

SprayvisitA(AModel d){AS}visitB(BModel d){BS}visitC(CModel d){CS}

VisitorvisitA(AModel d)visitB(BModel d)visitC(CModel d)

Relations support Patterns

R3

R4

P a b Finit A 3init B 4init C 53 M AM3 S AS4 M BM4 S BS5 M CM5 S CS

AM MCost BM MCost CM MCost AS SCost BS SCost CS SCost

MCost exitSCost exit

R3

R4

Page 12: Applications of the Matrix Model of Computation Sergio Pissanetzky

Action Traditional method MMC

decide what to refactor manual automatic

perform the refactoring

manual (tools available for some languages) automatic

procedure 16 Fowler refactorings 1 normalization

implementation requires use of pattern natural

Refactoring in the MMC

Page 13: Applications of the Matrix Model of Computation Sergio Pissanetzky

Conclusions

● The MMC is Universal

● Interfaces easily with applications

● Supports Object-Orientation

● Unifying factor for systems