Results 1 
3 of
3
Proving Semantical Equivalence of Data Specifications
 J. Pure and Applied Algebra
, 2005
"... More than two decades ago, Peter Freyd introduced essentially algebraic specifications, a wellbehaved generalization of algebraic specifications, allowing for equational partiality. These essentially algebraic specifications turn out to have a number of very interesting applications in computer ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
More than two decades ago, Peter Freyd introduced essentially algebraic specifications, a wellbehaved generalization of algebraic specifications, allowing for equational partiality. These essentially algebraic specifications turn out to have a number of very interesting applications in computer science.
GraphBased Logic snd Sketches II: FiniteProduct Categories and Equational Logic
, 1997
"... ion. In this case the equational rule of inference reads Given a set of typed variables and x 2 Vbl[S] n V , e = V e 0 e = V [fxg e 0 We define ø : = Type[e] = Type[e 0 ] and oe : = Type[x], and f : P ! ø : = Arr [e; V; ø ] f 0 : P ! ø : = Arr \Theta e 0 ; V; ø g : Q ! ø : = Arr [e; ..."
Abstract
 Add to MetaCart
ion. In this case the equational rule of inference reads Given a set of typed variables and x 2 Vbl[S] n V , e = V e 0 e = V [fxg e 0 We define ø : = Type[e] = Type[e 0 ] and oe : = Type[x], and f : P ! ø : = Arr [e; V; ø ] f 0 : P ! ø : = Arr \Theta e 0 ; V; ø g : Q ! ø : = Arr [e; V [ fxg; ø ] g 0 : Q ! ø : = Arr \Theta e 0 ; V [ fxg; ø Using Lemma 4.4.1, we may choose a map h : Y (V [ fxg) ! V such that g = f ffi h and g 0 = f 0 ffi h. Thus coded as arrows the rule reads f = f 0 f ffi h = f 0 ffi h GRAPHBASED LOGIC AND SKETCHES II 23 5.6. Substitutivity. Given a set V of typed variables, x 2 V , and expressions u and u 0 for which Type[x] = Type[u] = Type[u 0 ] and Type[e] = Type[e 0 ] = ø , e = V e 0 u =W u 0 e[x / u] = V nfxg[W e 0 [x / u 0 ] We already have the representations f : = Arr [e; V; ø ] = Sep[e] Par[e] Dia [e; V; ø ] f 0 : = Arr \Theta e 0 ; V; ø = Sep[e 0 ] Par[e 0 ] Dia[e 0 ; V; ø ] g : = Arr [u...