Proofs Regarding Specification of Spark Aggregation

Size: px
Start display at page:

Download "Proofs Regarding Specification of Spark Aggregation"

Transcription

1 Proofs Regarding Specification of Spark Aggregation Yu-Fang Chen 1, Chih-Duo Hong 1, Ondřej Lengál 1,2, Shin-Cheng Mu 1, Nishant Sinha 3, and Bow-Yaw Wang 1 1 Academia Sinica, Taiwan 2 Brno University of Technology, Czech Republic 3 IBM Research, India Laws regarding monads Recall the monad laws f =<< return x = f x, (1) return =<< m = m, (2) f =<< (g =<< m) = (λx f =<< g x) =<< m. (3) Monadic application and composition are defined as: (<=<) :: (b m c) (a m b) a m c (f <=< g) x = f =<< g x ( $ ) :: (a b) m a m b f $ m = (return f ) =<< m ( ) :: (b c) (a m b) (a m c) f g = ((return f )=<<) g Laws concerning them include: (f g) x = f $ g x, (4) f =<< (g $ m) = (f g) =<< m, (5) f $ (g $ m) = (f g) $ m, (6) f (g m) = (f g) m, (7) f <=< (g h) = (f g) <=< h, (8) f (g <=< h) = (f g) <=< h. (9) Proofs of the properties above will be given later, so as not to distract us from the main theorems. 1

2 Regarding monad-plus, we want ([]) to be associative, with mzero as identity. Monadic bind distributes into ([]) from the end: f =<< (m [] n) = (f =<< m) [] (f =<< n). (10) It is less mentioned, but not uncommon, to demand that ([]) is also commutative and idempotent. 1 Folding and Shuffling Lemma 1. Given ( ) :: a b b, we have foldr ( ) z insert x = return foldr ( ) z (x:), provided that x (y z) = y (x z) for all x,y :: a and z :: b. Proof. Prove foldr ( ) z $ insert x xs = return (foldr ( ) z (x : xs)). Induction on xs. Case xs := [ ]. foldr ( ) z $ insert x [ ] = { definition of ( $ ) } (return foldr ( ) z) =<< insert x [ ] = { definition of insert } (return foldr ( ) z) =<< return [x] = { monadic law (1) } return (foldr ( ) z [x]). Case xs := y : xs. foldr ( ) z $ insert x (y : xs) = { definition of ( $ ) } (return foldr ( ) z) =<< insert x (y : xs) = { definition of insert } (return foldr ( ) z) =<< (return (x : y : xs) [] ((y:) $ insert x xs)) = { by (10) } return (foldr ( ) z (x : y : xs)) [] ((return foldr ( ) z (y:)) =<< insert x xs). Focus on the second branch: (return foldr ( ) z (y:)) =<< insert x xs = { definition of foldr } (return (y ) foldr ( ) z) =<< insert x xs = { by (5) } (return (y )) =<< (foldr ( ) z $ insert x xs) = { induction } 2

3 (return (y )) =<< return (foldr ( ) z (x : xs)) = { monadic law (1) } return (y foldr ( ) z (x : xs)) = { definition of foldr } return (y (x foldr ( ) z xs)) = { since x (y z) = y (x z) } return (foldr ( ) z (x : y : xs)). Thus we have (foldr ( ) z insert x) (y : xs) = { calculatiion above } return (foldr ( ) z (x : y : xs)) [] return (foldr ( ) z (x : y : xs)) = { idempotence of ([]) } return (foldr ( ) z (x : y : xs)). Lemma 2. Given ( ) :: a b b, we have foldr ( ) z shuffle! = return foldr ( ) z, provided that x (y z) = y (x z) for all x,y :: a and z :: b. Proof. Prove that foldr ( ) z $ shuffle xs = return (foldr ( ) z xs). Induction on xs. Case xs := [ ] foldr ( ) z $ shuffle! [ ] = { definitions of ( $ ) and shuffle! } (return foldr ( ) z) =<< return [ ] = { monadic law (1) } return (foldr ( ) z [ ]). Case xs := x : xs. foldr ( ) z $ shuffle! (x : xs) = { definition of shuffle! } foldr ( ) z $ (insert x =<< shuffle xs) = { monadic law (3) } (λxs foldr ( ) z $ insert x xs) =<< shuffle! xs = { Lemma 1 } (λxs return (foldr ( ) z (x : xs))) =<< shuffle! xs = { definition of foldr } (return (x ) foldr ( ) z) =<< shuffle xs = { by (5) } (return (x )) =<< (foldr ( ) z $ shuffle xs) = { induction } (return (x )) =<< (return (foldr ( ) z xs)) 3

4 = { monadic law (1) } return (x foldr ( ) z xs) = { definition of foldr } return (foldr ( ) z (x : xs)). 2 Map, Filter, and Shuffling Lemma 3. insert (f x) map f = map f insert x. Proof. Prove that map f $ insert x xs = insert (f x) (map f xs) for all xs, by induction on xs. Case xs := y : xs. map f $ insert x (y : xs) = { definition of insert } map f $ (return (x : y : xs) [] ((y:) $ insert x xs)) = { (10), definition of ( $ ) } (map f $ return (x : y : xs)) [] (map f $ ((y:) $ insert x xs)). The first branch, by definition of ( $ ) and monadic law (1), simplifies to return (map f (x: y : xs)). The second branch: map f $ ((y:) $ insert x xs) = { (6) } (map f (y:)) $ insert x xs = { definition of map } ((f y:) map f ) $ insert x xs = { (6) } (f y:) $ (map f $ insert x xs) = { induction } (f y:) $ (insert (f x) (map f xs)). Thus we have map f $ insert x (y : xs) = { calculation above } return (f x : f y : map f xs) [] ((f y:) $ (insert (f x) (map f xs))) = { definition of insert } insert (f x) (f y : map f xs) = { definition of map } insert (f x) (map f (y : xs)). Lemma 4. shuffle! map f = map f shuffle!. Lemma 5. shuffle! filter p = filter p shuffle!. 4

5 3 Homomorphism, etc Lemma 6. h = hom ( ) z if and only if foldr ( ) z map h = h concat. Proof. A Ping-pong proof. Direction ( ). Prove foldr ( ) z (map h xss) = h (concat xss) by induction on xss. Case xss := [ ]: foldr ( ) z (map h [ ]) = foldr ( ) z [ ] = z = h (concat [ ]). Case xss := xs : xss: foldr ( ) z (map h (xs : xss)) = h xs foldr ( ) z (map h xss) = { induction } h xs h (concat xss) = { h homomorphism } h (concat (xs : xss)). Direction ( ). Show that h satisfies the properties being a list homomorphism. On empty list: h [ ] = h (concat [ ]) = { assumption } foldr ( ) z (map h [ ]) = z. On concatentation: h (xs + ys) = h (concat [xs,ys]) = { assumption } foldr ( ) z (map h [xs,ys]) = h xs (h ys z) = h xs h ys. Lemma 7. Let ( ) :: b b b be associative on img (foldr ( ) z) with z as its identity, where ( ) :: a b b. We have foldr ( ) z = hom ( ) z if and only if x (y w) = (x y) w for all x :: a and y,w img (foldr ( ) z). Proof. A Ping-pong proof. 5

6 Direction ( ). We show that foldr ( ) z satisfies the homomorphic properties. It is immediate that foldr ( ) z [ ] = z. For xs + ys, note that The aim is thus to prove that foldr ( ) z (xs + ys) = foldr ( ) (foldr ( ) ys) xs. foldr ( ) (foldr ( ) ys) xs = (foldr ( ) z xs) (foldr ( ) z ys). We perform an induction on xs. The case when xs := [ ] trivially holds. For xs := x : xs, we reason: foldr ( ) (foldr ( ) ys) (x : xs) = x foldr ( ) (foldr ( ) ys) xs = { induction } x ((foldr ( ) z xs) (foldr ( ) z ys)) = { assumption: x (y w) = (x y) w } (x (foldr ( ) z xs)) (foldr ( ) z ys) = (foldr ( ) z (x : xs)) (foldr ( ) z ys). Direction ( ). Given foldr ( ) z = hom ( ) z. Let y = foldr ( ) z xs and w = foldr ( ) z ys for some xs and ys. We reason: x (y w) = x (foldr ( ) z xs foldr ( ) z ys) = { since foldr ( ) z = hom ( ) z } x (foldr ( ) z (xs + ys)) = foldr ( ) z (x : xs + ys) { since foldr ( ) z = hom ( ) z } = foldr ( ) z (x : xs) foldr ( ) z ys = (x foldr ( ) z xs) foldr ( ) z ys = (x y) w. 4 Aggregation Lemma 8. Given ( ) :: a b b and define xs w = foldr ( ) w xs. We have foldr ( ) z concat = foldr ( ) z. Proof. By foldr fusion the proof obligation is foldr ( ) z (xs + ys) = foldr ( ) (foldr ( ) z ys) xs. Induction on xs. Case xs := [ ]: 6

7 foldr ( ) (foldr ( ) z ys) [ ] = foldr ( ) z ys = foldr ( ) z ([ ] + ys). Case xs := x : xs: foldr ( ) (foldr ( ) z ys) (x : xs) = x foldr ( ) (foldr ( ) z ys) xs = { induction } x foldr ( ) z (xs + ys) = foldr ( ) z (x : xs + ys). Theorem 9. aggregate z ( ) ( ) = return foldr ( ) z map (foldr ( ) z), provided that ( ) is associative, commutative, and has z as identity. aggregate z ( ) ( ) = { definition of aggregate } foldr ( ) z (shuffle! map (foldr ( ) z)) = { Lemma 4 } foldr ( ) z (map (foldr ( ) z) shuffle!) = { by (7) } (foldr ( ) z map (foldr ( ) z)) shuffle! = { Lemma 2 } return foldr ( ) z map (foldr ( ) z). The last step holds because by foldr-map fusion, for all h, foldr ( ) z map h = foldr ( ) z where xs w = h xs w, and ( ) satisfies that xs (ys w) = ys (xs w) if ( ) is associative, commutative, and has z as identity. Corollary 10. aggregate z ( ) ( ) = return foldr ( ) z concat, provided that ( ) is associative, commutative, and has z as identity, and that foldr ( ) z = hom ( ) z. aggregate z ( ) ( ) = { Theorem 9 } return foldr ( ) z map (foldr ( ) z) = { Lemma 6 } return foldr ( ) z concat. 7

8 Lemma 11. If aggregate z ( ) ( ) = return foldr ( ) z concat, and shuffle! xss = return yss [] m, we have foldr ( ) z (concat xss) = foldr ( ) z (map (foldr ( ) z) xss) = foldr ( ) z (map (foldr ( ) z) yss). Proof. We assume the following two properties of MonadPlus: 1. m 1 [] m 2 = return x implies that m 1 = m 2 = return x. 2. return x 1 = return x 2 implies that x 1 = x 2. For our problem, if shuffle! xss = return yss [] m, we have return foldr ( ) z concat $ xss = { assumption } aggregate z ( ) ( ) $ xss = { calculation in the previous lemma } (foldr ( ) z map (foldr ( ) z)) $ shuffle! xss = { shuffle! xss = return yss [] m } (return foldr ( ) z map (foldr ( ) z) $ yss) [] ((foldr ( ) z map (foldr ( ) z)) $ m). Theorem 12. If aggregate z ( ) ( ) = return foldr ( ) z concat, we have that ( ), when restricted to values in img (foldr ( ) z), is associative, commutative, and has z as identity. Proof. In the discussion below, let x,y, and w be in img (foldr ( ) z). That is, there exists xs, ys, and ws such that x = foldr ( ) z xs, y = foldr ( ) z ys, and w = foldr ( ) z ws. Identity. We reason: y = foldr ( ) z (concat [xs]) = { shuffle! [xs] = return [xs] [] mzero, Lemma 11 } foldr ( ) z (map (foldr ( ) z) [xs]) = y z. Thus z is a right identity of ( ). y = foldr ( ) z (concat [[ ],xs]) = { shuffle! [[ ],xs] = return [[ ],xs] [] m, Lemma 11 } foldr ( ) z (map (foldr ( ) z) [[ ],xs]) = z (y z) = { z is a right identity of ( ) } z y. 8

9 Thus z is also a left identity of ( ). Commutativity. We reason: x y = { z is a right identity } x (y z) = foldr ( ) z (map (foldr ( ) z) [xs,ys]) = { shuffle [xs, ys] = return [ys, xs] [] m, Lemma 11 } foldr ( ) z (map (foldr ( ) z) [ys, xs]) = y (x z) y x. Associativity. We reason: x (y w) = { z is a right identity } x (y (w z)) = foldr ( ) z (map (foldr ( ) z) [xs,ys,ws]) = { } foldr ( ) z (map (foldr ( ) z) [ws,xs,ys]) = w (x (y z)) = { z is a right identity } w (x y) = { ( ) commutative } (x y) w. Theorem 13. If aggregate z ( ) ( ) = return foldr ( ) z concat, we have foldr ( ) z = hom ( ) z. Proof. Apparently foldr ( ) z [ ] = z. We are left with proving the case for concatenation. foldr ( ) z (xs + ys) = foldr ( ) z (concat [xs, ys]) = { Lemma 11 } foldr ( ) z (map (foldr ( ) z) [xs, ys]) = foldr ( ) z xs (foldr ( ) z ys z) = { Theorem 12, z is identity } foldr ( ) z xs foldr ( ) z ys. Corollary 14. Given ( ) :: a b b and ( ) :: b b b. aggregate z ( ) ( ) = return foldr ( ) z concat if and only if (img (foldr ( ) z),( ),z) forms a commutative monoid, and that foldr ( ) z = hom ( ) z. Proof. A conclusion following from Corollary 10, Theorem 12, and Theorem 13. 9

10 5 Tree Aggregate Lemma 15. apply! ( ) = return foldr ( ) z if ( ) is associative, commutative, and has z as identity. Proof. To do. Theorem 16. treeaggregate z ( ) ( ) = return foldr ( ) z map (foldr ( ) z) if ( ) is associative, commutative, and has z as identity. Proof. treeaggregate z ( ) ( ) = { definition of treeaggregate } apply! ( ) <=< (shuffle! map (foldr ( ) z)) = { Lemma 4 } apply! ( ) <=< (map (foldr ( ) z) shuffle!) = { by (8) } (apply! ( ) map (foldr ( ) z)) <=< shuffle! = { Lemma 15 } (return foldr ( ) z map (foldr ( ) z)) <=< shuffle! = { definitions of (<=<) and ( ) } (foldr ( ) z map (foldr ( ) z)) shuffle! = { Lemma 2 } return foldr ( ) z map (foldr ( ) z). 6 Aggregation by Key For proofs, it is helpful to have an inductive definition of ( ˆ z ). (k,v) ˆ z [ ] = [(k,v z)] (k,v) ˆ z ((j,u) : xs) k = = j = (k,v u) : xs otherwise = (j,u) : ((k,v) ˆ z xs). Define the following auxiliary functions: keq k = (k = =) fst, lookup :: Eq k k a PairRDD k a a lookup k z = hd z map snd filter (keyeq k) concat, filterkrdd :: Eq k k PairRDD k a PairRDD k a filterkrdd k = filter ( null) map (filter (keq k)). Lemma 17. For all j, k, xs, v, z, and ( ), we have: 1. filter (keq k) ((k,v) ˆ z xs) = (k,v) ˆ z filter (keq k) xs. 10

11 2. filter (keq k) ((j,v) ˆ z xs) = filter (keq k) xs, if k j. Lemma 18. For all k, ( ), and z, we have filter (keq k) foldr ( ˆ z ) [ ] = foldr ( ˆ z ) [ ] filter (keq k). Lemma 19. For all k, ( ), and z, we have foldr ( ˆ z ) [ ] (filter (keq k) xs) = [(k,foldr ( ) z map snd filter (keq k) $ xs)] if there exists at least one (k,v) in xs. Otherwise foldr ( ˆ z ) [ ] (filter (keq k) xs) = [ ]. Corollary 20. As a corollary, we have that for all k, ( ), and z, hd z shuffle! map value foldr ( ˆ z ) [ ] filter (keq k) = return foldr dot z map value filter (keq k). It follows from Lemma 19 because, when the input is empty or does not contain entries with key k, both sides reduce to return z. Corollary 21. For all k, z and ( ) we have: concat map (map value filter (keyeq k) foldr ( ˆ z ) [ ]) = map (foldr ( ) z) filterkrdd k. Theorem 22. If..., we have lookup k z aggregatebykey z ( ) ( ) = return foldr ( ) z map (foldr ( ) z) filterkrdd k. lookup k z aggregatebykey z ( ) ( ) = { definitions } (hd z map snd filter (keq k) concat) repartition! <=< (foldr ( ˆ z ) [ ] concat) map! (foldr ( ˆ z ) [ ]) = { concat part = return } (hd z map snd filter (keq k)) shuffle! <=< (foldr ( ˆ z ) [ ] concat) map! (foldr ( ˆ z ) [ ]) = { Lemma 4 and 5 } hd z shuffle! <=< (map snd filter (keq k) foldr ( ˆ z ) [ ] concat) map! (foldr ( ˆ z ) [ ]) = { Lemma 4 } hd z shuffle! <=< (map snd filter (keq k) foldr ( ˆ z ) [ ] concat map (foldr ( ˆ z ) [ ])) shuffle! = { by (8) and (9) } (hd z shuffle! map snd filter (keq k) foldr ( ˆ z ) [ ] concat map (foldr ( ˆ z ) [ ])) <=< shuffle!. 11

12 We work on the part before the right-most shuffle!: hd z shuffle! map snd filter (keq k) foldr ( ˆ z ) [ ] concat map (foldr ( ˆ z ) [ ]) = { Lemma 18 } hd z shuffle! map snd foldr ( ˆ z ) [ ] filter (keq k) concat map (foldr ( ˆ z ) [ ]) = { Corollary 20 } return foldr ( ) z map snd filter (keq k) concat map (foldr ( ˆ z ) [ ]) = { naturalty } return foldr ( ) z concat map (map snd filter (keq k) foldr ( ˆ z ) [ ]) = { Corollary 21 } return foldr ( ) z map (foldr ( ) z) filterkrdd k. Back to the main proof: lookup k z aggregatebykey z ( ) ( ) = { calculation above } (return foldr ( ) z map (foldr ( ) z) filter ( null) map (filter (keq k))) <=< shuffle! = { definitions of (<=<) and ( ) } (foldr ( ) z map (foldr ( ) z) filter ( null) map (filter (keq k))) shuffle! = { Lemma 4 and 5 } (foldr ( ) z map (foldr ( ) z)) shuffle! filterkrdd k = { Lemma 2 } return foldr ( ) z map (foldr ( ) z) filterkrdd k. lookup k z $ (aggregatemessageswithactivevertices sendmsg ( ) active (Graph vrdd erdd)) = { definitions } lookup k z $ reducebykey ( ) (map (concatmap sendifactive) erdd) = { } return foldl ( ) z concat filterkrdd k map (concatmap sendifactive) $ erdd = { naturalty laws } return foldl ( ) z concatmap sendifactive map value filter (keq k) concat $ erdd. 7 Proofs of monadic properties Proving (5) f =<< (g $ m) = (f g) =<< m. f =<< (g $ m) = { definition of ( $ ) } 12

13 f =<< ((return g) =<< m) = { monadic law (3) } (λx f =<< return (g x)) =<< m = { monadic law (1) } (λx f (g x)) =<< m = (f g) =<< m. Proving (6) f $ (g $ m) = (f g) $ m. f $ (g $ m) = { definition of ( $ ) } (return f ) =<< (g $ m) = { by (5) } (return f g) =<< m = { definition of ( $ ) } (f g) =<< m. For the next results we prove a lemma: (f =<<) (g=<<) = { η intro. } (λm f =<< (g =<< m)) = { monadic law (3) } (λm (λy f =<< g y) =<< m) = { η reduction } (((f =<<) g)=<<). (f =<<) (g=<<) = (((f =<<) g)=<<). (11) Proving (7) f (g m) = (f g) m. f (g m) = { definition of ( ) } ((return f )=<<) ((return g)=<<) m = { by (11) } ((((return f )=<<) return g)=<<) m = { monadic law (1) } ((return f g)=<<) m = { definition of ( ) } (f g) m. 13

14 Proving (8) f <=< (g h) = (f g) <=< h. f <=< (g h) = { definitions of (<=<) } (f =<<) ((return g)=<<) h = { by (11) } (((f =<<) return g)=<<) h = { monadic law (1) } (((f g)=<<) h = { definition of (<=<) } (f g) <=< h. Proving (9) f (g <=< h) = (f g) <=< h. f (g <=< h) = { definitions of (<=<) and ( ) } ((return f )=<<) (g=<<) h = { by (11) } ((((return f )=<<) g)=<<) h = { definition of ( ) } ((f g)=<<) h = { definition of (<=<) } (f g) <=< h. 14

Free Groups. Joachim Breitner. April 17, 2016

Free Groups. Joachim Breitner. April 17, 2016 Free Groups Joachim Breitner April 17, 2016 Abstract Free Groups are, in a sense, the most generic kind of group. They are defined over a set of generators with no additional relations in between them.

More information

Outline. A recursive function follows the structure of inductively-defined data.

Outline. A recursive function follows the structure of inductively-defined data. Outline A recursive function follows the structure of inductively-defined data. With lists as our example, we shall study 1. inductive definitions (to specify data) 2. recursive functions (to process data)

More information

A General Method for the Proof of Theorems on Tail-recursive Functions

A General Method for the Proof of Theorems on Tail-recursive Functions A General Method for the Proof of Theorems on Tail-recursive Functions Pasquale Noce Security Certification Specialist at Arjo Systems - Gep S.p.A. pasquale dot noce dot lavoro at gmail dot com pasquale

More information

Cauchy s Mean Theorem and the Cauchy-Schwarz Inequality. Benjamin Porter

Cauchy s Mean Theorem and the Cauchy-Schwarz Inequality. Benjamin Porter Cauchy s Mean Theorem and the Cauchy-Schwarz Inequality Benjamin Porter March 12, 2013 Contents 1 Cauchy s Mean Theorem 3 1.1 Abstract.............................. 3 1.2 Formal proof...........................

More information

Ring Sums, Bridges and Fundamental Sets

Ring Sums, Bridges and Fundamental Sets 1 Ring Sums Definition 1 Given two graphs G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) we define the ring sum G 1 G 2 = (V 1 V 2, (E 1 E 2 ) (E 1 E 2 )) with isolated points dropped. So an edge is in G 1 G

More information

Natural Deduction for Propositional Logic

Natural Deduction for Propositional Logic Natural Deduction for Propositional Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 10, 2018 Bow-Yaw Wang (Academia Sinica) Natural Deduction for Propositional Logic

More information

Normal Forms of Propositional Logic

Normal Forms of Propositional Logic Normal Forms of Propositional Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 12, 2017 Bow-Yaw Wang (Academia Sinica) Normal Forms of Propositional Logic September

More information

A Simple Implementation Technique for Priority Search Queues

A Simple Implementation Technique for Priority Search Queues A Simple Implementation Technique for Priority Search Queues RALF HINZE Institute of Information and Computing Sciences Utrecht University Email: ralf@cs.uu.nl Homepage: http://www.cs.uu.nl/~ralf/ April,

More information

MATH 423 Linear Algebra II Lecture 33: Diagonalization of normal operators.

MATH 423 Linear Algebra II Lecture 33: Diagonalization of normal operators. MATH 423 Linear Algebra II Lecture 33: Diagonalization of normal operators. Adjoint operator and adjoint matrix Given a linear operator L on an inner product space V, the adjoint of L is a transformation

More information

Discrete Mathematics Review

Discrete Mathematics Review CS 1813 Discrete Mathematics Discrete Mathematics Review or Yes, the Final Will Be Comprehensive 1 Truth Tables for Logical Operators P Q P Q False False False P Q False P Q False P Q True P Q True P True

More information

Naturality, but not as you know it

Naturality, but not as you know it Naturality, but not as you know it Prologue WG2.8 #31, Aussois, October 2013 Naturality, but not as you know it Ralf Hinze Department of Computer Science, University of Oxford Wolfson Building, Parks Road,

More information

THE MAXIMAL SUBGROUPS AND THE COMPLEXITY OF THE FLOW SEMIGROUP OF FINITE (DI)GRAPHS

THE MAXIMAL SUBGROUPS AND THE COMPLEXITY OF THE FLOW SEMIGROUP OF FINITE (DI)GRAPHS THE MAXIMAL SUBGROUPS AND THE COMPLEXITY OF THE FLOW SEMIGROUP OF FINITE (DI)GRAPHS GÁBOR HORVÁTH, CHRYSTOPHER L. NEHANIV, AND KÁROLY PODOSKI Dedicated to John Rhodes on the occasion of his 80th birthday.

More information

DEFINITIONS: OPERADS, ALGEBRAS AND MODULES. Let S be a symmetric monoidal category with product and unit object κ.

DEFINITIONS: OPERADS, ALGEBRAS AND MODULES. Let S be a symmetric monoidal category with product and unit object κ. DEFINITIONS: OPERADS, ALGEBRAS AND MODULES J. P. MAY Let S be a symmetric monoidal category with product and unit object κ. Definition 1. An operad C in S consists of objects C (j), j 0, a unit map η :

More information

Product rules and distributive laws

Product rules and distributive laws Product rules and distributive laws Joost Winter University of Warsaw April 2, 2016 Overview Main goal of this paper: a categorical framework for a two-step determinization process in which product rules,

More information

arxiv: v1 [math.nt] 16 Jan 2018

arxiv: v1 [math.nt] 16 Jan 2018 ROOTED TREE MAPS AND THE KAWASHIMA RELATIONS FOR MULTIPLE ZETA VALUES HENRIK BACHMANN AND TATSUSHI TANAKA arxiv:1801.05381v1 [math.nt] 16 Jan 2018 Abstract. Recently, inspired by the Connes-Kreimer Hopf

More information

Equations of Predicate Calculus

Equations of Predicate Calculus a = { null} a = { null} a = a { identity} a = a { identity} Some Equations of a a = a { idempotent} a a = a { idempotent} Boolean lgebra a b = b a { commutative} a b = b a { commutative} (a b) c = a (b

More information

Examples for program extraction in Higher-Order Logic

Examples for program extraction in Higher-Order Logic Examples for program extraction in Higher-Order Logic Stefan Berghofer October 10, 2011 Contents 1 Auxiliary lemmas used in program extraction examples 1 2 Quotient and remainder 2 3 Greatest common divisor

More information

Equational Reasoning with Applicative Functors. Institute of Information Security

Equational Reasoning with Applicative Functors. Institute of Information Security Equational Reasoning with Applicative Functors Andreas Lochbihler Joshua Schneider Institute of Information Security Equational Reasoning with Applicative Functors Andreas Lochbihler Joshua Schneider Institute

More information

System F. Proofs and Types. Bow-Yaw Wang. Academia Sinica. Spring 2012

System F. Proofs and Types. Bow-Yaw Wang. Academia Sinica. Spring 2012 Proofs and Types System F Bow-Yaw Wang Academia Sinica Spring 2012 The Calculus Types in System F are defined as follows. type variables: X, Y,.... if U and V are types, then U V is a type. if V is a type

More information

Landau Symbols. Manuel Eberl. November 28, 2018

Landau Symbols. Manuel Eberl. November 28, 2018 Landau Symbols Manuel Eberl November 28, 2018 Contents 1 Sorting and grouping factors 1 2 Decision procedure for real functions 4 2.1 Eventual non-negativity/non-zeroness............. 4 2.2 Rewriting Landau

More information

Iris: Higher-Order Concurrent Separation Logic. Lecture 6: Case Study: foldr

Iris: Higher-Order Concurrent Separation Logic. Lecture 6: Case Study: foldr 1 Iris: Higher-Order Concurrent Separation Logic Lecture 6: Case Study: foldr Lars Birkedal Aarhus University, Denmark November 10, 2017 2 Overview Earlier: Operational Semantics of λ ref,conc e, (h, e)

More information

Algebras for Combinatorial Search

Algebras for Combinatorial Search Michael Spivey Oxford University Computing Laboratory Wolfson Building, Parks Road, Oxford OX1 3QD, UK mike@comlab.ox.ac.uk Abstract We show how combinatorial search strategies including depth-first, breadth-first

More information

Universal Algebra for Termination of Higher-Order Rewriting. Makoto Hamana

Universal Algebra for Termination of Higher-Order Rewriting. Makoto Hamana Universal Algebra for Termination of Higher-Order Rewriting Makoto Hamana Department of Computer Science, Gunma University, Japan RTA 05 2005, April 1 Intro: First-Order Term Rewriting System (TRS) Terms

More information

NOTES ON LINEAR ALGEBRA OVER INTEGRAL DOMAINS. Contents. 1. Introduction 1 2. Rank and basis 1 3. The set of linear maps 4. 1.

NOTES ON LINEAR ALGEBRA OVER INTEGRAL DOMAINS. Contents. 1. Introduction 1 2. Rank and basis 1 3. The set of linear maps 4. 1. NOTES ON LINEAR ALGEBRA OVER INTEGRAL DOMAINS Contents 1. Introduction 1 2. Rank and basis 1 3. The set of linear maps 4 1. Introduction These notes establish some basic results about linear algebra over

More information

FUNCTORS AND ADJUNCTIONS. 1. Functors

FUNCTORS AND ADJUNCTIONS. 1. Functors FUNCTORS AND ADJUNCTIONS Abstract. Graphs, quivers, natural transformations, adjunctions, Galois connections, Galois theory. 1.1. Graph maps. 1. Functors 1.1.1. Quivers. Quivers generalize directed graphs,

More information

j=1 u 1jv 1j. 1/ 2 Lemma 1. An orthogonal set of vectors must be linearly independent.

j=1 u 1jv 1j. 1/ 2 Lemma 1. An orthogonal set of vectors must be linearly independent. Lecture Notes: Orthogonal and Symmetric Matrices Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong taoyf@cse.cuhk.edu.hk Orthogonal Matrix Definition. Let u = [u

More information

Lecture 3 : Bifurcation Analysis

Lecture 3 : Bifurcation Analysis Lecture 3 : Bifurcation Analysis D. Sumpter & S.C. Nicolis October - December 2008 D. Sumpter & S.C. Nicolis General settings 4 basic bifurcations (as long as there is only one unstable mode!) steady state

More information

Lecture 6 Special Subgroups

Lecture 6 Special Subgroups Lecture 6 Special Subgroups Review: Recall, for any homomorphism ϕ : G H, the kernel of ϕ is and the image of ϕ is ker(ϕ) = {g G ϕ(g) = e H } G img(ϕ) = {h H ϕ(g) = h for some g G} H. (They are subgroups

More information

Proof Calculus for Partial Correctness

Proof Calculus for Partial Correctness Proof Calculus for Partial Correctness Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 7, 2016 Bow-Yaw Wang (Academia Sinica) Proof Calculus for Partial Correctness September

More information

MATH 433 Applied Algebra Lecture 22: Semigroups. Rings.

MATH 433 Applied Algebra Lecture 22: Semigroups. Rings. MATH 433 Applied Algebra Lecture 22: Semigroups. Rings. Groups Definition. A group is a set G, together with a binary operation, that satisfies the following axioms: (G1: closure) for all elements g and

More information

Functor Pulling. Lambert Meertens

Functor Pulling. Lambert Meertens Functor Pulling Lambert Meertens Department of Algorithmics and Architecture, CWI, Amsterdam, and Department of Computing Science, Utrecht University, The Netherlands www.cwi.nl/ lambert 1 Introduction

More information

Dimension of the mesh algebra of a finite Auslander-Reiten quiver. Ragnar-Olaf Buchweitz and Shiping Liu

Dimension of the mesh algebra of a finite Auslander-Reiten quiver. Ragnar-Olaf Buchweitz and Shiping Liu Dimension of the mesh algebra of a finite Auslander-Reiten quiver Ragnar-Olaf Buchweitz and Shiping Liu Abstract. We show that the dimension of the mesh algebra of a finite Auslander-Reiten quiver over

More information

U.C. Berkeley Better-than-Worst-Case Analysis Handout 3 Luca Trevisan May 24, 2018

U.C. Berkeley Better-than-Worst-Case Analysis Handout 3 Luca Trevisan May 24, 2018 U.C. Berkeley Better-than-Worst-Case Analysis Handout 3 Luca Trevisan May 24, 2018 Lecture 3 In which we show how to find a planted clique in a random graph. 1 Finding a Planted Clique We will analyze

More information

Computing with Semigroup Congruences. Michael Torpey

Computing with Semigroup Congruences. Michael Torpey Computing with Semigroup Congruences Michael Torpey 5th September 2014 Abstract In any branch of algebra, congruences are an important topic. An algebraic object s congruences describe its homomorphic

More information

Infinite series-parallel posets: logic and languages

Infinite series-parallel posets: logic and languages Appeared in: ICALP 2000, Lecture Notes in Computer Science vol. 1853, c Springer-Verlag, 2000, 648-662. Infinite series-parallel posets: logic and languages Dietrich Kuske Institut für Algebra, Technische

More information

REPRESENTATION THEORY WEEK 5. B : V V k

REPRESENTATION THEORY WEEK 5. B : V V k REPRESENTATION THEORY WEEK 5 1. Invariant forms Recall that a bilinear form on a vector space V is a map satisfying B : V V k B (cv, dw) = cdb (v, w), B (v 1 + v, w) = B (v 1, w)+b (v, w), B (v, w 1 +

More information

List of Theorems. Mat 416, Introduction to Graph Theory. Theorem 1 The numbers R(p, q) exist and for p, q 2,

List of Theorems. Mat 416, Introduction to Graph Theory. Theorem 1 The numbers R(p, q) exist and for p, q 2, List of Theorems Mat 416, Introduction to Graph Theory 1. Ramsey s Theorem for graphs 8.3.11. Theorem 1 The numbers R(p, q) exist and for p, q 2, R(p, q) R(p 1, q) + R(p, q 1). If both summands on the

More information

Oscillation Criteria for Delay Neutral Difference Equations with Positive and Negative Coefficients. Contents

Oscillation Criteria for Delay Neutral Difference Equations with Positive and Negative Coefficients. Contents Bol. Soc. Paran. Mat. (3s.) v. 21 1/2 (2003): 1 12. c SPM Oscillation Criteria for Delay Neutral Difference Equations with Positive and Negative Coefficients Chuan-Jun Tian and Sui Sun Cheng abstract:

More information

Finite Automata and Regular Languages (part III)

Finite Automata and Regular Languages (part III) Finite Automata and Regular Languages (part III) Prof. Dan A. Simovici UMB 1 / 1 Outline 2 / 1 Nondeterministic finite automata can be further generalized by allowing transitions between states without

More information

Solutions to Problem Set 1

Solutions to Problem Set 1 Solutions to Problem Set 1 18.904 Spring 2011 Problem 1 Statement. Let n 1 be an integer. Let CP n denote the set of all lines in C n+1 passing through the origin. There is a natural map π : C n+1 \ {0}

More information

CANCELLATIVE AND MALCEV PRESENTATIONS FOR FINITE REES INDEX SUBSEMIGROUPS AND EXTENSIONS

CANCELLATIVE AND MALCEV PRESENTATIONS FOR FINITE REES INDEX SUBSEMIGROUPS AND EXTENSIONS J. Aust. Math. Soc. 84 (2008), 39 61 doi:10.1017/s1446788708000086 CANCELLATIVE AND MALCEV PRESENTATIONS FOR FINITE REES INDEX SUBSEMIGROUPS AND EXTENSIONS ALAN J. CAIN, EDMUND F. ROBERTSON and NIK RUŠKUC

More information

Relational Algebra by Way of Adjunctions. Jeremy Gibbons (joint work with Fritz Henglein, Ralf Hinze, Nicolas Wu) DBPL, October 2015

Relational Algebra by Way of Adjunctions. Jeremy Gibbons (joint work with Fritz Henglein, Ralf Hinze, Nicolas Wu) DBPL, October 2015 Relational Algebra by Way of Adjunctions Jeremy Gibbons (joint work with Fritz Henglein, Ralf Hinze, Nicolas Wu) DBPL, October 2015 Relational Algebra by Way of Adjunctions 2 1. Summary bulk types (sets,

More information

LIE ALGEBRAS: LECTURE 3 6 April 2010

LIE ALGEBRAS: LECTURE 3 6 April 2010 LIE ALGEBRAS: LECTURE 3 6 April 2010 CRYSTAL HOYT 1. Simple 3-dimensional Lie algebras Suppose L is a simple 3-dimensional Lie algebra over k, where k is algebraically closed. Then [L, L] = L, since otherwise

More information

Theory of Computation Time Complexity

Theory of Computation Time Complexity Theory of Computation Time Complexity Bow-Yaw Wang Academia Sinica Spring 2012 Bow-Yaw Wang (Academia Sinica) Time Complexity Spring 2012 1 / 59 Time for Deciding a Language Let us consider A = {0 n 1

More information

Amortized Complexity Verified

Amortized Complexity Verified Amortized Complexity Verified Tobias Nipkow August 28, 2014 Abstract A framework for the analysis of the amortized complexity of (functional) data structures is formalized in Isabelle/HOL and applied to

More information

CSE 505, Fall 2009, Midterm Examination 5 November Please do not turn the page until everyone is ready.

CSE 505, Fall 2009, Midterm Examination 5 November Please do not turn the page until everyone is ready. CSE 505, Fall 2009, Midterm Examination 5 November 2009 Please do not turn the page until everyone is ready Rules: The exam is closed-book, closed-note, except for one side of one 85x11in piece of paper

More information

Normalization by Evaluation

Normalization by Evaluation Normalization by Evaluation Andreas Abel Department of Computer Science and Engineering Chalmers and Gothenburg University PhD Seminar in Mathematical Engineering EAFIT University, Medellin, Colombia 9

More information

Subdirectly irreducible commutative idempotent semirings

Subdirectly irreducible commutative idempotent semirings Subdirectly irreducible commutative idempotent semirings Ivan Chajda Helmut Länger Palacký University Olomouc, Olomouc, Czech Republic, email: ivan.chajda@upol.cz Vienna University of Technology, Vienna,

More information

Denotational semantics: proofs

Denotational semantics: proofs APPENDIX A Denotational semantics: proofs We show that every closed term M has a computable functional [[M ] as its denotation. A.1. Unification We show that for any two constructor terms one can decide

More information

EXTENSIONS OF EXTENDED SYMMETRIC RINGS

EXTENSIONS OF EXTENDED SYMMETRIC RINGS Bull Korean Math Soc 44 2007, No 4, pp 777 788 EXTENSIONS OF EXTENDED SYMMETRIC RINGS Tai Keun Kwak Reprinted from the Bulletin of the Korean Mathematical Society Vol 44, No 4, November 2007 c 2007 The

More information

Jumping Finite Automata

Jumping Finite Automata Jumping Finite Automata Alexander Meduna and Petr Zemek Brno University of Technology, Faculty of Information Technology IT4Innovations Centre of Excellence Božetěchova 2, 612 00 Brno, Czech Republic http://www.fit.vutbr.cz/

More information

Kleene Algebra and Arden s Theorem. Anshul Kumar Inzemamul Haque

Kleene Algebra and Arden s Theorem. Anshul Kumar Inzemamul Haque Kleene Algebra and Arden s Theorem Anshul Kumar Inzemamul Haque Motivation Regular Expression is a Kleene Algebra. We can use the properties and theorems of Kleene Algebra to simplify regular expressions

More information

Applications of Regular Algebra to Language Theory Problems. Roland Backhouse February 2001

Applications of Regular Algebra to Language Theory Problems. Roland Backhouse February 2001 1 Applications of Regular Algebra to Language Theory Problems Roland Backhouse February 2001 Introduction 2 Examples: Path-finding problems. Membership problem for context-free languages. Error repair.

More information

Chih-Hung Yen and Hung-Lin Fu 1. INTRODUCTION

Chih-Hung Yen and Hung-Lin Fu 1. INTRODUCTION TAIWANESE JOURNAL OF MATHEMATICS Vol. 14, No. 1, pp. 273-286, February 2010 This paper is available online at http://www.tjm.nsysu.edu.tw/ LINEAR 2-ARBORICITY OF THE COMPLETE GRAPH Chih-Hung Yen and Hung-Lin

More information

Tree-adjoined spaces and the Hawaiian earring

Tree-adjoined spaces and the Hawaiian earring Tree-adjoined spaces and the Hawaiian earring W. Hojka (TU Wien) Workshop on Fractals and Tilings 2009 July 6-10, 2009, Strobl (Austria) W. Hojka (TU Wien) () Tree-adjoined spaces and the Hawaiian earring

More information

2 I like to call M the overlapping shue algebra in analogy with the well known shue algebra which is obtained as follows. Let U = ZhU ; U 2 ; : : :i b

2 I like to call M the overlapping shue algebra in analogy with the well known shue algebra which is obtained as follows. Let U = ZhU ; U 2 ; : : :i b The Leibniz-Hopf Algebra and Lyndon Words Michiel Hazewinkel CWI P.O. Box 94079, 090 GB Amsterdam, The Netherlands e-mail: mich@cwi.nl Abstract Let Z denote the free associative algebra ZhZ ; Z2; : : :i

More information

Automata on linear orderings

Automata on linear orderings Automata on linear orderings Véronique Bruyère Institut d Informatique Université de Mons-Hainaut Olivier Carton LIAFA Université Paris 7 September 25, 2006 Abstract We consider words indexed by linear

More information

On improving matchings in trees, via bounded-length augmentations 1

On improving matchings in trees, via bounded-length augmentations 1 On improving matchings in trees, via bounded-length augmentations 1 Julien Bensmail a, Valentin Garnero a, Nicolas Nisse a a Université Côte d Azur, CNRS, Inria, I3S, France Abstract Due to a classical

More information

Polynomial Factorization

Polynomial Factorization Polynomial Factorization René Thiemann and Akihisa Yamada October 11, 2017 Abstract Based on existing libraries for polynomial interpolation and matrices, we formalized several factorization algorithms

More information

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016 Rules and derivations in an elementary logic course arxiv:160101483v1 [cslo] 7 Jan 2016 Gilles Dowek Inria, 23 avenue d Italie, CS 81321, 75214 Paris Cedex 13, France gillesdowek@inriafr When teaching

More information

1 The Hyland-Schalke functor G Rel. 2 Weakenings

1 The Hyland-Schalke functor G Rel. 2 Weakenings 1 The Hyland-Schalke functor G Rel Let G denote an appropriate category of games and strategies, and let Rel denote the category of sets and relations. It is known (Hyland, Schalke, 1996) that the following

More information

EXTRACTING COST RECURRENCES FROM SEQUENTIAL AND PARALLEL FUNCTIONAL PROGRAMS

EXTRACTING COST RECURRENCES FROM SEQUENTIAL AND PARALLEL FUNCTIONAL PROGRAMS Wesleyan University EXTRACTING COST RECURRENCES FROM SEQUENTIAL AND PARALLEL FUNCTIONAL PROGRAMS By Justin Raymond Faculty Advisor: Norman Danner A Dissertation submitted to the Faculty of Wesleyan University

More information

The dual homomorphism to f : A B is the homomorphism f : Hom(A, G) Hom(B, G)

The dual homomorphism to f : A B is the homomorphism f : Hom(A, G) Hom(B, G) Hom(A, G) = {h : A G h homomorphism } Hom(A, G) is a group under function addition. The dual homomorphism to f : A B is the homomorphism f : Hom(A, G) Hom(B, G) defined by f (ψ) = ψ f : A B G That is the

More information

The Language. Elementary Logic. Outline. Well-Formed Formulae (wff s)

The Language. Elementary Logic. Outline. Well-Formed Formulae (wff s) The Language Elementary Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan July 1, 2009 The following symbols are used in sentential logic Symbol Name Remark ( left parenthesis

More information

1. Prove: A full m- ary tree with i internal vertices contains n = mi + 1 vertices.

1. Prove: A full m- ary tree with i internal vertices contains n = mi + 1 vertices. 1. Prove: A full m- ary tree with i internal vertices contains n = mi + 1 vertices. Proof: Every vertex, except the root, is the child of an internal vertex. Since there are i internal vertices, each of

More information

Introduction to Z3. Bow-Yaw Wang. December 19, Institute of Information Science Academia Sinica, Taiwan

Introduction to Z3. Bow-Yaw Wang. December 19, Institute of Information Science Academia Sinica, Taiwan Introduction to Z3 Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan December 19, 2017 Bow-Yaw Wang (Academia Sinica) Introduction to Z3 December 19, 2017 1 / 26 Outline 1 Introduction

More information

Generic Accumulations for Program Calculation

Generic Accumulations for Program Calculation Generic Accumulations for Program Calculation Mauro Jaskelioff Facultad de Cs. Exactas, Ingeniería y Agrimensura Universidad Nacional de Rosario Rosario - Argentina mauro@fceia.unr.edu.ar December 2004

More information

Appendix A: Separation theorems in IR n

Appendix A: Separation theorems in IR n Appendix A: Separation theorems in IR n These notes provide a number of separation theorems for convex sets in IR n. We start with a basic result, give a proof with the help on an auxiliary result and

More information

Modèles des langages de programmation Domaines, catégories, jeux. Programme de cette seconde séance:

Modèles des langages de programmation Domaines, catégories, jeux. Programme de cette seconde séance: Modèles des langages de programmation Domaines, catégories, jeux Programme de cette seconde séance: Modèle ensembliste du lambda-calcul ; Catégories cartésiennes fermées 1 Synopsis 1 the simply-typed λ-calculus,

More information

Ribbon Proofs for Separation Logic (Isabelle Formalisation)

Ribbon Proofs for Separation Logic (Isabelle Formalisation) Ribbon Proofs for Separation Logic (Isabelle Formalisation) John Wickerson April 17, 2016 Abstract This document concerns the theory of ribbon proofs: a diagrammatic proof system, based on separation logic,

More information

Equational Logic. Chapter Syntax Terms and Term Algebras

Equational Logic. Chapter Syntax Terms and Term Algebras Chapter 2 Equational Logic 2.1 Syntax 2.1.1 Terms and Term Algebras The natural logic of algebra is equational logic, whose propositions are universally quantified identities between terms built up from

More information

Errata to Model Categories by Mark Hovey

Errata to Model Categories by Mark Hovey Errata to Model Categories by Mark Hovey Thanks to Georges Maltsiniotis, maltsin@math.jussieu.fr, for catching most of these errors. The one he did not catch, on the non-smallness of topological spaces,

More information

Announcements Monday, November 20

Announcements Monday, November 20 Announcements Monday, November 20 You already have your midterms! Course grades will be curved at the end of the semester. The percentage of A s, B s, and C s to be awarded depends on many factors, and

More information

Tree Adjoining Grammars

Tree Adjoining Grammars Tree Adjoining Grammars TAG: Parsing and formal properties Laura Kallmeyer & Benjamin Burkhardt HHU Düsseldorf WS 2017/2018 1 / 36 Outline 1 Parsing as deduction 2 CYK for TAG 3 Closure properties of TALs

More information

MATH 233B, FLATNESS AND SMOOTHNESS.

MATH 233B, FLATNESS AND SMOOTHNESS. MATH 233B, FLATNESS AND SMOOTHNESS. The discussion of smooth morphisms is one place were Hartshorne doesn t do a very good job. Here s a summary of this week s material. I ll also insert some (optional)

More information

Finite Automata and Formal Languages TMV026/DIT321 LP4 2012

Finite Automata and Formal Languages TMV026/DIT321 LP4 2012 Finite Automata and Formal Languages TMV26/DIT32 LP4 22 Lecture 7 Ana Bove March 27th 22 Overview of today s lecture: Regular Expressions From FA to RE Regular Expressions Regular expressions (RE) are

More information

Burnside rings and fusion systems

Burnside rings and fusion systems university of copenhagen Burnside rings and fusion systems Sune Precht Reeh Centre for Symmetry and Deformation Department of Mathematical Sciences UC Santa Cruz, May 21, 2014 Slide 1/16 The Burnside ring

More information

Tensor Product of modules. MA499 Project II

Tensor Product of modules. MA499 Project II Tensor Product of modules A Project Report Submitted for the Course MA499 Project II by Subhash Atal (Roll No. 07012321) to the DEPARTMENT OF MATHEMATICS INDIAN INSTITUTE OF TECHNOLOGY GUWAHATI GUWAHATI

More information

On Lists and Other Abstract Data Types in the Calculus of Constructions

On Lists and Other Abstract Data Types in the Calculus of Constructions On Lists and Other Abstract Data Types in the Calculus of Constructions Jonathan P. Seldin Department of Mathematics Concordia University Montreal, Quebec, Canada seldin@alcor.concordia.ca January 29,

More information

Left-Forbidding Cooperating Distributed Grammar Systems

Left-Forbidding Cooperating Distributed Grammar Systems Left-Forbidding Cooperating Distributed Grammar Systems Filip Goldefus a, Tomáš Masopust b,, Alexander Meduna a a Faculty of Information Technology, Brno University of Technology Božetěchova 2, Brno 61266,

More information

Large subsets of semigroups

Large subsets of semigroups CHAPTER 8 Large subsets of semigroups In the van der Waerden theorem 7.5, we are given a finite colouring ω = A 1 A r of the commutative semigroup (ω, +); the remark 7.7(b) states that (at least) one of

More information

Finite Automata and Formal Languages

Finite Automata and Formal Languages Finite Automata and Formal Languages TMV26/DIT32 LP4 2 Lecture 6 April 5th 2 Regular expressions (RE) are an algebraic way to denote languages. Given a RE R, it defines the language L(R). Actually, they

More information

Trees. A tree is a graph which is. (a) Connected and. (b) has no cycles (acyclic).

Trees. A tree is a graph which is. (a) Connected and. (b) has no cycles (acyclic). Trees A tree is a graph which is (a) Connected and (b) has no cycles (acyclic). 1 Lemma 1 Let the components of G be C 1, C 2,..., C r, Suppose e = (u, v) / E, u C i, v C j. (a) i = j ω(g + e) = ω(g).

More information

Axioms of Kleene Algebra

Axioms of Kleene Algebra Introduction to Kleene Algebra Lecture 2 CS786 Spring 2004 January 28, 2004 Axioms of Kleene Algebra In this lecture we give the formal definition of a Kleene algebra and derive some basic consequences.

More information

Code Generation for a Simple First-Order Prover

Code Generation for a Simple First-Order Prover Code Generation for a Simple First-Order Prover Jørgen Villadsen, Anders Schlichtkrull, and Andreas Halkjær From DTU Compute, Technical University of Denmark, 2800 Kongens Lyngby, Denmark Abstract. We

More information

Programming Language Concepts, cs2104 Tutorial 1. Answers

Programming Language Concepts, cs2104 Tutorial 1. Answers Programming Language Concepts, cs2104 Tutorial 1. Answers Exercise 1. (Variables and Cells) Given: local X in X=23 local X in X=44 {Browse X} The second uses a cell: local X in X={NewCell 23} X:=44 {Browse

More information

Two Exercises Found in a Book on Algorithmics

Two Exercises Found in a Book on Algorithmics Reprinted from PitoortAse SPECIFICATION AND TRANSFORMATION. L. G. LT. Meertens. ed. Copyright t 1987 North-Holland Publishing Company. 451 Two Exercises Found in a Book on Algorithmics Richard S. Bird

More information

SYNTACTIC SEMIGROUP PROBLEM FOR THE SEMIGROUP REDUCTS OF AFFINE NEAR-SEMIRINGS OVER BRANDT SEMIGROUPS

SYNTACTIC SEMIGROUP PROBLEM FOR THE SEMIGROUP REDUCTS OF AFFINE NEAR-SEMIRINGS OVER BRANDT SEMIGROUPS SYNTACTIC SEMIGROUP PROBLEM FOR THE SEMIGROUP REDUCTS OF AFFINE NEAR-SEMIRINGS OVER BRANDT SEMIGROUPS JITENDER KUMAR AND K. V. KRISHNA Abstract. The syntactic semigroup problem is to decide whether a given

More information

INTRODUCTION TO LIE ALGEBRAS. LECTURE 7.

INTRODUCTION TO LIE ALGEBRAS. LECTURE 7. INTRODUCTION TO LIE ALGEBRAS. LECTURE 7. 7. Killing form. Nilpotent Lie algebras 7.1. Killing form. 7.1.1. Let L be a Lie algebra over a field k and let ρ : L gl(v ) be a finite dimensional L-module. Define

More information

Semigroup, monoid and group models of groupoid identities. 1. Introduction

Semigroup, monoid and group models of groupoid identities. 1. Introduction Quasigroups and Related Systems 16 (2008), 25 29 Semigroup, monoid and group models of groupoid identities Nick C. Fiala Abstract In this note, we characterize those groupoid identities that have a (nite)

More information

A Multiplicative Operation on Matrices with Entries in an Arbitrary Abelian Group

A Multiplicative Operation on Matrices with Entries in an Arbitrary Abelian Group A Multiplicative Operation on Matrices with Entries in an Arbitrary Abelian Group Cyrus Hettle (cyrus.h@uky.edu) Robert P. Schneider (robert.schneider@uky.edu) University of Kentucky Abstract We define

More information

JORDAN NORMAL FORM. Contents Introduction 1 Jordan Normal Form 1 Conclusion 5 References 5

JORDAN NORMAL FORM. Contents Introduction 1 Jordan Normal Form 1 Conclusion 5 References 5 JORDAN NORMAL FORM KATAYUN KAMDIN Abstract. This paper outlines a proof of the Jordan Normal Form Theorem. First we show that a complex, finite dimensional vector space can be decomposed into a direct

More information

A Machine-Checked Proof of the Average-Case Complexity of Quicksort in Coq

A Machine-Checked Proof of the Average-Case Complexity of Quicksort in Coq A Machine-Checked Proof of the Average-Case Complexity of Quicksort in Coq Eelis van der Weegen and James McKinna Institute for Computing and Information Sciences Radboud University Nijmegen Heijendaalseweg

More information

Notes on Geometry of Surfaces

Notes on Geometry of Surfaces Notes on Geometry of Surfaces Contents Chapter 1. Fundamental groups of Graphs 5 1. Review of group theory 5 2. Free groups and Ping-Pong Lemma 8 3. Subgroups of free groups 15 4. Fundamental groups of

More information

Auslander-Yoneda algebras and derived equivalences. Changchang Xi ( ~) ccxi/

Auslander-Yoneda algebras and derived equivalences. Changchang Xi ( ~)  ccxi/ International Conference on Operads and Universal Algebra, Tianjin, China, July 5-9, 2010. Auslander- and derived Changchang Xi ( ~) xicc@bnu.edu.cn http://math.bnu.edu.cn/ ccxi/ Abstract In this talk,

More information

Menger's Theorem. Christoph Dittmann August 16, Contents

Menger's Theorem. Christoph Dittmann August 16, Contents Menger's Theorem Christoph Dittmann isabelle@christoph-d.de August 16, 2018 We present a formalization of Menger's Theorem for directed and undirected graphs in Isabelle/HOL. This well-known result shows

More information

Extending the Lambda Calculus: An Eager Functional Language

Extending the Lambda Calculus: An Eager Functional Language Syntax of the basic constructs: Extending the Lambda Calculus: An Eager Functional Language canonical forms z cfm ::= intcfm boolcfm funcfm tuplecfm altcfm intcfm ::= 0 1-1... boolcfm ::= boolconst funcfm

More information

Programming with Dependent Types in Coq

Programming with Dependent Types in Coq Programming with Dependent Types in Coq Matthieu Sozeau LRI, Univ. Paris-Sud - Démons Team & INRIA Saclay - ProVal Project PPS Seminar February 26th 2009 Paris, France Coq A higher-order, polymorphic logic:

More information

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Lecture 4 Ana Bove March 24th 2017 Structural induction; Concepts of automata theory. Overview of today s lecture: Recap: Formal Proofs

More information

The rank of connection matrices and the dimension of graph algebras

The rank of connection matrices and the dimension of graph algebras The rank of connection matrices and the dimension of graph algebras László Lovász Microsoft Research One Microsoft Way Redmond, WA 98052 August 2004 Microsoft Research Technical Report TR-2004-82 Contents

More information