A Relational Virtual Machine for Program Evolution Sergio Pissanetzky SER 3534 SER 3534 - A Relational Virtual Machine for Program.

Slides:



Advertisements
Similar presentations
Agenda Definitions Evolution of Programming Languages and Personal Computers The C Language.
Advertisements

ALGEBRA II HONORS/GIFTED - SECTION 10-6
7-5 solving quadratic equations
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 39: Lambda Calculus.
Comp 205: Comparative Programming Languages Semantics of Imperative Programming Languages denotational semantics operational semantics logical semantics.
From last time: live variables Set D = 2 Vars Lattice: (D, v, ?, >, t, u ) = (2 Vars, µ, ;,Vars, [, Å ) x := y op z in out F x := y op z (out) = out –
Data Structures Introduction. What is data? (Latin) Plural of datum = something given.
Direction of analysis Although constraints are not directional, flow functions are All flow functions we have seen so far are in the forward direction.
Algorithmic Problems in Algebraic Structures Undecidability Paul Bell Supervisor: Dr. Igor Potapov Department of Computer Science
Minimizing the number of keys for secure communication in a network By Niels Duif.
Graphs & Recursion Chapter 2 Highlights. Graphs Used to model relationships Includes –Set of vertices (nodes) –Set of edges that connect the nodes Example.
5.4 Factoring Quadratic Expressions. WAYS TO SOLVE A QUADRATIC EQUATION ax² + bx + c = 0 There are many ways to solve a quadratic. The main ones are:
The Box-Method and Grouping By: Brian D Bedard Standard I.1 Patterns Students recognize similarities and generalize patterns, use patterns to create.
CIS Computer Programming Logic
Introduction Chapter 0. Three Central Areas 1.Automata 2.Computability 3.Complexity.
Evolution of Programming Languages Generations of PLs.
Unit 2 – Week 5 Reasoning with Linear Equations and Inequalities Lesson 3 Students describe the solution set of two equations or inequalities joined.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Difference of Squares Chapter 8.8. Difference of Squares (Definition)
Mt263f-11 Discrete Structures Li Tak Sing( 李德成 ) Room A
2 pt 3 pt 4 pt 5pt 1 pt 2 pt 3 pt 4 pt 5 pt 1 pt 2pt 3 pt 4pt 5 pt 1pt 2pt 3 pt 4 pt 5 pt 1 pt 2 pt 3 pt 4pt 5 pt 1pt Row Operations Matrix Operations.
10/18/ Complex Numbers. Solve: Solve: 10/18/
Artificial Intelligence Tarik Booker. What we will cover… History Artificial Intelligence as Representation and Search Languages used in Artificial Intelligence.
1 Section 7.2 Equivalent Formulas Two wffs A and B are equivalent, written A  B, if they have the same truth value for every interpretation. Property:
Algebra 1 Mini-Lessons Which graph shows a solution that is at least 7 and less than 11? MA.912.A.3.4: Solve and graph simple and compound inequalities.
Solving Linear Inequalities `. Warm-up -4 < x ≤ 6 x ≤ -4 or x>
MA.912.A.4.2: Add, subtract, and multiply polynomials. Which of the following expressions is equivalent to (5x − 3) 2 ? A. 25x 2 − 30x + 9 B. 25x 2 −
1.2e: solving literal equations M(F&A)–10–4: Demonstrates conceptual understanding of equality by solving problems involving algebraic reasoning about.
Unit 2 – Week 4 Reasoning with Linear Equations and Inequalities Lesson 2 Students understand that an equation with variables is often viewed as a question.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
Theory of Programming Languages Introduction. What is a Programming Language? John von Neumann (1940’s) –Stored program concept –CPU actions determined.
4.9 – Graph and Solve Quadratic Inequalities A quadratic inequality in two variables can be written in one of the following forms: y < ax 2 + bx + c y.
Pre-Calculus Section 1.7 Inequalities Objectives: To solve linear inequalities. To solve absolute value inequalities.
1.5 Solving Inequalities P COMPOUND INEQUALITY: 2 inequalities joined with the word “and” or the word “or”
Graphing Linear Inequalities in Two Variables MATH 018 Combined Algebra S. Rook.
The Matrix Theory of Objects An Update Sergio Pissanetzky Model Universality Behavior Constraints Dynamics Cost Chaos Attractors.
1 Beginning & Intermediate Algebra – Math 103 Math, Statistics & Physics.
1.4 Solving Equations Honors Algebra II Goals: ~Solving Equations ~Solving Word Problems with Equations.
Unit 2 – Week 5 Reasoning with Linear Equations and Inequalities Lesson 3 Students describe the solution set of two equations or inequalities joined by.
Algebra TEXAS StyleA2warmup3 Algebra 2 Warm-Up 3.
Advanced Algebra Notes Section 3.4: Solve Systems of Linear Equations in Three Variables A ___________________________ x, y, and z is an equation of the.
Algebra 2 9/22/14 Bellwork:. 2.8 – Graph Linear Inequalities in Two Variables A linear inequality in two variables can be written in one of these forms:
Equivalent Equations Justify your reasoning. Image from
Key Concepts for Sect. 7.1 *A system of equations is two or more equations in two or more variables. *Numerically, a solution to a system of equations.
Partial Fractions. After completing this chapter you should be able to: Add and subtract two or more fractions Convert an expression with linear factors.
LESSON 3-2 ANGLES AND PARALLEL LINES. Concept Example 1 Use Corresponding Angles Postulate A. In the figure, m  11 = 51. Find m  15.
Extension of Separation Logic for Stack Reasoning Jiang Xinyu.
Homework (Tuesday, 11/3) Lesson 2.03 packet page 4 and 5.
Facility Layout Part b.
Fundamentals of Algorithms MCS - 2 Lecture # 3. Representation of Algorithms.
Review A program is… a set of instructions that tell a computer what to do. Programs can also be called… software. Hardware refers to… the physical components.
Quiz for Solving Mathematical Equations Megan Reichert Click to Start the Quiz!
Solve the compound inequality 3x ≤ –6 or 2x – 6 ≥ 4. Graph the solution set. A.{x | x ≤ –2 or x ≥ 5}; B.{x | x ≤ 2 or x ≤ –5}; C.{x | x ≥ 2 or x ≥ 5};
Algebra 1 Section 4.3 Graph Linear Equations by using Intercepts A linear equation (the graph is a line) takes the form Ax + By = C. Which are linear equations?
Algebra 1 Section 4.2 Graph linear equation using tables The solution to an equation in two variables is a set of ordered pairs that makes it true. Is.
OCR A Level F453: High level languages Programming techniques a. identify a variety of programming paradigms (low-level, object- oriented,
Algebra 1 Section 6.5 Graph linear inequalities in two variables.
Quadratic Inequalities
Lesson: Extension Cubic Functions and Equations
Algebra Bell-work 9/13/17 Turn in your HW! 1.) 7x – 6 = 2x + 9
Turing Machine
If intelligence is the ability to solve unanticipated problems,
If intelligence is the ability to solve unanticipated problems,
The Matrix Model of Computation (MMC)
TRANSLATORS AND IDEs Key Revision Points.
Adaptive Systems and Analyst-independent technologies
High Level Programming Languages
The Programming Process
High School – Pre-Algebra - Unit 8
Variables and Equations
Presentation transcript:

A Relational Virtual Machine for Program Evolution Sergio Pissanetzky SER 3534 SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky.

Motivation SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky. 2 The Problem Program evolution involves many repetitive tasks. But mechanizing the tasks has proved difficult. The Solution Using a relational container for source code. The Reason There is no common program representation.

Using relations to represent a program is natural 3 SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky. 1. a = b / c; KabOc 1CA/A KbO3 2M+A Variables can be ( A, M, C ). Literals can only be ( A ). Service s : A s × M s → M s × C s 2. b = b + 3; a service

The RMC Model: M = (C, Q) 1/ CAA 2+ MA 3 fCAA 4 δMMC 6= CA 7= CA C = KOabcΩГΛ3 1.a = b / c; 2.b = b + 3; 3. a = f (b, c); 4.δ : Ω × Г → Ω × Г × Λ 5.if (b) a = c; else a = 3; true6 4false7 Q = servbnext 4 SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky.

5 1/ CAA 2+ MA 3 fCAA 4 δMMC 6= CA 7= CA KOabcΩГΛ5 “CAA’MA’CAA’MMC’CA’CA” ”CCCAAA’ACA’MMC’ACAA’AAC’MAA” RMC SequencesMatrix of Services 1in CCCAAA 2rd ACA 3 trMMC 4 gbACAA 5wr AAC 6mv MAA 7ex KOcΩГΛgbhunpq Turing Machine

Submodeling, encapsulation, inheritance axx bxxxx cxx dxx exxx fxx gxxx hxxx ixxx jxxx 6 SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky. P Q R S 123 ax bxx 123 axx bxx cx 123 axx bx cxxx 123 axx bx cxx P 4, 5, 6 b, e, g Q 7, 8 a, d R 9, 10 c, f S 3 Matrix C Class diagram

RMC Algebra Matrix operations submatricing, permutations. Relational operations joins, projections, normalization Graph operations searches, labels, paths Set operations sub-superset, union, products SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky. 7 Formal algorithms

An RMC-centric environment SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky. 8 RMC + algorithms business rules source code parserdevelopers language module other models UML, CFG, DFD intermediate representations developers low level code assembly, 3-address interpreter

Summary Program Mathematical object. Turing complete Universal. Formal algebra Algorithms. Link to source code. Coherence in program evolution. 9 SER A Relational Virtual Machine for Program Evolution. Sergio Pissanetzky.