The Derivative of a Regular Type is its Type of OneHole Contexts


 Jared O’Neal’
 2 years ago
 Views:
Transcription
1 The erivative of a egular Type is its Type of neole Contexts Extended Abstract Conor McBride Abstract olymorphic regular types are treelike datatypes generated by polynomial type expressions over a set of free variables and closed under least fixed point. The equality types of Core ML can be expressed in this form. Given such a type expression with free, this paper shows a way to represent the onehole contexts for elements of within elements of, together with an operation which will plug an element of into the hole of such a context. nehole contexts are given as inhabitants of a regular type, computed generically from the syntactic structure of by a mechanism better known as partial differentiation. The relevant notion of containment is shown to be appropriately characterized in terms of derivatives and plugging in. The technology is then exploited to give the onehole contexts for subelements of recursive types in a manner similar to uet s zippers [ue97]. 1 ntroduction Gérard uet s delightful paper The Zipper [ue97] defines a representation of treelike data decomposed into a subtree of interest and its surroundings. e shows us informally how to equip a datatype with an associated type of zippers onehole contexts representing a tree with one subtree deleted. Zippers collect the subtrees forking off step by step from the path which starts at the hole and returns to the root. This type of contexts is thus independent of the particular tree being decomposed or the subtree in the hole. ecomposition is seen not as a kind of epartment of Computer Science, University of urham, subtraction, an operation inherently troubled by the need to subtract only smaller things from larger, but as the inversion of a kind of addition (see figure 1). = + Figure 1: a tree as a onehole context plus a subtree This paper exhibits a similar technique, defined more formally, which is generic for a large class of treelike data structures the regular datatypes. These are essentially the equality types of core ML, presented as polynomial type expressions closed under least fixed point. n particular, will define and characterize two operations: on types, computing for each regular recursive datatype its type of onehole contexts; on terms, computing a big term by plugging a small term into a onehole context. The first of these operations is given by recursion on the structure of the algebraic expressions which name types. As wrote down the rules corresponding to the empty type, the unit type, sums and products, was astonished to find that Leibniz had beaten me to them by several centuries: they were exactly the rules of differentiation had learned as a child. 1
2 1.1 Motivating Examples ow can we describe the onehole contexts of a recursive type? uet suggests that we regard them as journeys backwards from hole to root, recording what we pass by on the way. propose to follow his suggestion, except that will start at the root and work my way forwards to the hole. Both choices have their uses: backwards is better for tree editing applications, but the forwards approach is conceptually simpler. Consider such journeys within binary trees: btree leaf node btree btree At each point, we are either at the hole or we must step further in our journey is a list of steps, list btree for some appropriate step type btree, but what? At each step, we must record our binary choice of left or right, together with the btree we passed by. We may take btree bool btree We can define the plugging in operation as follows 1 btree btree btree true node false node!"!# list btree btree!"! $ btree % & (')'*!"! $ +$,!"!  We might define btree more algebraically as the sum (i.e. choice ) of the unique leaf with nodes pairing two subtrees powers denote repeated product: btree 1 btree 2 Correspondingly, we might write 1 uet would 2 btree Now imagine similar journeys list ttree for ternary trees: ttree 1 ttree 3 Each step chooses one of three directions, and remembers two bypassed trees, so ttree 3 ttree 2 t looks remarkably like the type of steps is calculated by differentiating the original datatype. n fact, this is exactly what is happening, as we shall see when we examine how to compute the description of the onehole contexts for regular datatypes. 2 resenting the egular Types n order to give a precise treatment of differentiating a datatype, we must be precise about the expressions which define them. n particular, the availability of fixed points requires us to consider the binding of fresh type variables. There is much activity in this area of research, but this is not the place to rehearse its many issues. The approach take in this paper relativizes regular type expressions to finite sequences of available free names. then explain how to interpret such expressions relative to an environment which interprets those names. choose to give inductive definitions in natural deduction style. Although this requires more space than the datatype declarations of conventional programming languages, they allow dependent families to be presented much more clearly: even nested types [BM98, B99] must be defined uniformly over their indices, whilst the full notion of family allows constructors to apply only at particular indices. also give type signatures to defined functions in this way, preferring to present the universal quantification inherent in their type dependency via schematic use of variables, rather than by complex and inscrutable formulae. 2
3 2.1 Sequences of istinct Names Let us presume the existence of an infinite 2 set Name of names, equipped with a decidable equality. We may think of Name as being string. The set NmSeq may then be defined to contain the finite sequences of distinct names. Each such sequence can be viewed forgetfully as a set. E NmSeq NmSeq Set NmSeq Name GF = NmSeq Name Set shall always use names in a wellfounded manner. The explanation of some name from some sequence will involve only prior names intuitively, those which have already been explained. t is therefore important to define for any such pair, the restriction G, being the sequence of names from prior to. NmSeq G NmSeq = = KML N G As equality on names is decidable, shall freely allow names to occur nonlinearly in patterns. n order to recover the disjointness of patterns without recourse to pri ML oritizing them, introduce the notation to mean any except. Correspondingly, each clause of such a definition holds (schematically) as an equation. nonetheless write to indicate a directed computation rule, reserving for equational propositions. 2.2 escribing the egular Types The regular types over given free names, or rather, the expressions which describe them are given by the inductive 2 By infinite, mean that can always choose a fresh name if need to create a new binding. family eg in figure 2. Firstly, we embed 3 type variables in eg, then we give the building blocks for polynomials and least fixed point. NmSeq eg Set eg 0 eg eg eg 1 eg eg eg = eg Q. eg = eg eg = eg eg = eg Figure 2: descriptions of regular types The last two constructors may seem mysterious. owever, the redundancy they introduce will save us work when we come to interpret these descriptions of types. We could choose to interpret only eg E, the closed descriptions, keeping the open types underwater like the dangerous bits of an iceberg. This would require us to substitute for free names whenever they become exposed, for example, when expanding a fixed point. We would in turn be forced to take account of the equational properties of substitutions and prove closure properties with respect to them. dispense with substitution. The alternative have adopted is to interpret open descriptions in environments which explain their free names. The two unusual constructors above perform the rôles of definition and weakening, respectively growing and shrinking the environment within their scope. efinition replaces substitution and weakening adds more free names without modifying old descriptions. This avoids the propagation of substitutions through the syntactic structure and hence concerns about capture we shall only ever interpret the value of a variable in its bindingtime environment. 3 n fact am abusing notation by suppressing a constructor symbol. 3
4 Y } 2.3 Type Environments A type environment for a given name sequence associates each in with a type description over the prior names, G. NmSeq Env Set E Env = E NmSeq Env = = Env eg We may equip environments with operators for restriction (extracting the prefix prior to a given name) and projection (looking up a name s associated type description). is the environment which explains the free names in TSU. Env G Env Env TSV G eg CWL = = KML = SV N = SV TSV 2.4 nterpreting the escriptions Now that we have the means to describe regular types, we must say which data are contained by the type with a given description, relative to an environment explaining its free names we must give a semantics to the syntax. Figure 3 defines the interpretation && inductively. 4 Note that have not supplied constructor symbols for the embedding rules corresponding to variablelookup, definition and weakening. These apparent conflations of types, e.g. && = with &&, are harmless, as the types tell us which embeddings are operative. 4 The semantic brackets do not represent a metalevel operation; they are intended to be a suggestive objectlevel syntax for a dependent family of types. Env && eg Set TSU && && && inl && && inr && XZY && # && && X 1 Y && = Q &&. con Q &&. = && && && = = && Figure 3: the data in regular types 2.5 Examples of egular Types Let us briefly examine some familiar types in this setting. We have the unit type 1, so we can use to build the booleans: []\^\_ `a7bmc ecfg0h c 1 1 X Y eg any inl X Y && any d inr && any d We may use Q to build recursive datatypes like the natural numbers and our tree examples, again for any and, as a fresh bound variable ( below) can always be chosen: idjwk Q. 1  l cvam X Y h con inl bmnpo o con inr [ kvq*r r Q. 1 v g c f*e stu XZY vww con inl m xwc y X con inr kvkzq{r r Q. 1 ` g c fe s] X Y t con inl ` w m xwc }~ X con inr X YY 4
5 Y ˆ ˆ Y We may use weakening to define an operation which computes list types: _ C k ww g Q. 1 XZY p con inl ' '{ƒ! X con inr ƒ! Y The finitely branching trees may thus be given by kvq*r r Q. _C k e w m xwc,! con! 2.6 Subterm rderings for egular Types Let us now define an inductive relation, ˆ(Š for && and &&, characterizing the subterms of a term in accounted for by s in. This relation characterizes s rôle as a container of s. omit the obvious wellformedness premises. Œˆ Tˆ ] = && Tˆ Tˆ Œˆ 9 ^Š inl Tˆ(Š Tˆ 9 ^Š inr Œˆ Tˆ Ž Š X Y Œˆ(Š Tˆ Ž Š X Œˆ( =. Œˆ. con Tˆ ˆ = Œˆ Œˆ(Š ˆ Š bserve that subterms accounted for by an in a composite type are characterized by a rule for each component of that type. n particular, the rules for a definition = find subterms due to s in and s in respectively, the latter occurring within subterms due to s in. Note that the latter rule exploits && the fact 9&& that we may see as inhabiting both and =. The effect of local type variables is thus reflected at their place of binding, rather than at their places of use. 5 The significance of the phrase accounted for by the s in is shown by this simple example: f we take E v m m g = `a7bwc = we can derive ˆ Ž X `a7bwc ecf g)h c Y ecf g)h c but not ˆ Ž X `7abWc ecfg0h c Y ecfg0h c The point is that has type on account of the in this particular s definition of, whereas, irrespective of, we can always derive ˆ Ž X owever, discharging the definition of in our example: Taking E v m m g = `a7bwc we can derive Ž = X `7abWc ecfg0h c Y ecf g)h c Ž = X `7abWc ecfg0h c Y and Both s are accounted for by the indicated type, and the derivations follow respectively by the two definition rules. A similar phenomenon occurs if we try to specialize this ordering to the _C s contained by a k, that is, to determine when tˆ. 1 Ž! nly the rule for fixed points applies, showing this derived rule to be complete: 1 ˆ š Ž Uœ =. 1 Ž Z! ˆ(ž Ÿ 5 con! The premise can only be further simplified by the definition rules: the direct rule finds only the head of the list in ; the indirect rule s second premise finds only the tail in, and the first demands that we search for an within that tail. We thus derive (and show complete) the two rules we might have hoped for: 5 t would be interesting to investigate a notion of subterm with a single rule for definitions capturing subterms within term :, remembering that really means : however, we would pay with extra complexity in the rule for variables, and with the need to carry extra environmental information explicitly. 5
6 ˆ(ž Ÿ25 ')'! tˆ žÿ25! ˆ(ž Ÿ25 ' '! We may exploit this containment relation to define the usual subterm relation for recursive types, namely ˆ. for Q &&., as follows: Tˆ. Tˆ. ˆ Tˆ. con That is, to find a subterm of con Q &&., either stop where you are, or move down one level to an contained by and repeat. ˆ cannot go further than one level, because is free in! [ With a little work, we can specialize these rules for kzq{r r to tˆ 5««tˆ, vww m xwc 5««ˆ, ª «"«9* 3 neole Contexts tˆ 5««ˆ, vww m x c ª «"«Let us now turn to the generic representation of onehole contexts for recursive regular types. We shall first need to see what one step is. The immediate recursive subterms in some con of type Q &&. are those subterms of which correspond to the occurrences of in recall that has type = Q &&.. We therefore need to describe the onehole contexts for s in s. Since may itself contain fixed points, the primitive operation we need to define will compute for the type of onehole contexts for any of its free names. This operation is exactly partial differentiation. 3.1 artial ifferentiation 9 The partial derivative of a regular type description with respect to a free name is computed by structural recursion over the syntax of. 6 t is defined in figure 4. eg eg 1 CML Q. Q^±. = Q ². = Q ². ± = = = 0 z³ Figure 4: partial differentiation The first six lines are familiar from calculus. For onehole contexts, they tell us that an contains one in trivial surroundings a other than contains no constants contain no we find an in an in either an or a we find an in an the, or (right) in the passing the either (left) in the, passing Note that partial differentiation is independent of environments: it is defined on the syntax of types alone. ust like the subterm ordering, it takes no account of the possibility that some might, for some, expand in terms of. owever, partial differentiation is the basic tool by which total differentiation is constructed, and this is exactly what we need when we go under a binder and become liable to encounter local names which potentially do conceal s. The rule for definitions again handles local variables at their place of binding, summing the types of contexts for 6 t is depressing how few mathematics teachers deign to impart this vital clue to calculus students, giving them rules but no method. learned differentiation from the pattern matching algorithm given in [McB70]. 6
7 ² È Á Á Á Á Î o Î ² Â É ² ² È s occurring directly in, and indirectly in an buried within a. n conventional calculus, this is effectively the chain rule extended to functions of two arguments µ U ¹ µ º» {¼ in the special case where is. ¹½ µ º» {¾ z ½ ¼¹ ¾ š œkà š œ nce we know how to differentiate definitions, we can make the leap to fixed points. f we expand the fixed point and apply the chain rule, we obtain: Q. = Q. = Q. = Q. Q. t is tempting to solve this recursive equation with a least fixed point, but does this give the correct type of onehole contexts? Yes: every inside a Q. must be a piece of payload data attached to some node buried at a finite depth. ence our journey takes us either to an at the outermost node and stops hence the in the base case or to a subnode and onwards hence the in the step case : it must stop eventually. We must weaken at ±, for ± is not free for. ur journey is clearly linear: the body of the fixed point is syntactically linear in ±. ndeed, the following set isomorphism holds, showing that our journey is a list of steps with a tip : Q^± ². ± &&^Á ) _ C k * && The rules for differentiating an explicit weakening simply shortcircuit the process if the name we seek is that being excluded. 3.2 Examples of erivatives Before we develop any more technology, let us check that partial differentiation is giving us the kind of answers we expect. f course, the types we get back will contain lots of 0 and 1, but the usual algebraic laws which simplify such expressions hold as set isomorphisms. t is also not hard to show that a recursive type with no base cases is empty: f =0 && Á 0 then Q. && Á 0 Writing Â for the o fold product of s and o for the sum of o 1 s, we can check (by induction on o ), that for oäã Å 9 Â && Á Viewed as a onehole context for o, the tells us which Â Æ Ç records the remaining s. the hole is at, while the p Â Æ^Ç A more involved example finds an within a list of s _ C k Q. 1 st Q^±. 1 st V _ C = k 1 s] 7V _C = k ± Q^±. _C = k p _C = k t ± ² _C k _ C k We would indeed hope that a onehole context for a list element is a pair of lists the prefix and the suffix! _ C Amusingly, the following power series resembles k, È È,Ì for p Í and conventional calculus tells us 3.3 lugging n È È,Ì tï Given a onehole context in and an, we should be able to construct a by plugging the in the hole. That is, we need an operation which behaves thus: && Ò Ð ^Ñ && È È,Ì Ï && Ò 7
8 Ñ Y Y Ñ Ð É Á ÒÓ && && Ò Ð ^Ñ && X YÔÐ ^Ñ inl Ò Ð ^Ñ inl Ò Ð ^Ñ inr Ò Ð ^Ñ inr Ò Ð X ^Ñ N inl X Ò YÔÐ ^Ñ X Ò Ð ^Ñ inr Ò YÔÐ ^Ñ X Ò Ð ^Ñ con X inl Ò Ð Q. ^Ñ con Ò Ð +Ñ; con inr Ò {Õ! Y Ð Q. ^Ñ con Ò Ð Õ! Ð Q. ^Ñ N7 X inl Ò Ð = ^Ñ Ò Ð +Ñ inr Ò Ò YÖÐ = ^Ñ Ò Ð Ò +Ñ; ÒŒ V³ uø Ò Ð +Ñ Figure 5: plugging in ow are we to define this operation? should tell us the shape of the term we are trying to build; Ò should tell us which path to take and also supply the subterms corresponding to the offpath components of pairs. n effect, the operation proceeds by structural recursion on Ò, but its flow of control involves a primary case analysis on. f course, we need only consider cases where is not 0. The definition is in figure 5. zùd[ Q. Q. eg ¹Ùd[ Q. eg _C k 9 = Q. nformally, an inhabitant of ¹Ù+[ Q. looks like 3.4 Subtrees in ecursive egular Types Ò Ç ')' Ò ')' ÝVÝzÝ Ò Â ' ' ww g The operation picks out s from containers for s. As suggested above, this gives us the tool we need to pick out subtrees from our treelike recursive datatypes, interpreting as a container for the immediate subtrees of con. ence our intuition that contexts for recursive type inhabit list can be made rigorous. The step type for trees in Q. is = Q. The onehole contexts for Q. thus inhabit ¹Ù+[ Q. given by 7 7 Abuse of notation ÚÛ Ü is really an operation on A few brief calculations reassure us that hence ¹Ùd[ _ C k && _C k && ¹Ù+[ zùd[ Q. && Á zùd[ Q zùd[þ[ &&. kvq*r r &&ßÁ _C k à [ kzq{r r && ¹Ù+[ kzkvq*r r && Á Gá2á _ C k Câ kzkvq*r r ¹Ùd[ä É kvq*r r && Á 5ãã á2á _ C k _C k kzq{r r É ã ã The corresponding notion of addition has the signature Õ!# ¹Ùd[ Q &&. Q Õ &&.!. Q &&. 8
9 ç è For the Õ Õ! depicted above and an appropriate, we expect!. to be con Ò Ç con Ò É con ÝVÝVÝ Ò Â f course,. list 8 : ww g Ò ' ' Õ!.. is defined by iterating Ð ^Ñ over the con Ò Ð ^Ñ Òz. bserve, for example, that {å æ really behaves like plus, whilst ž Ÿ 5 is ¹Ù+[ effectively append. t is not hard to show in general that Q. is a monoid under append and that. is an action of that monoid on Q Subterms and erivatives The relationship between the containment orderings and derivatives is an intimate one, and so too is that between the subtree orderings and the types computed by ¹Ù+[. n effect, the containment ordering is exactly that induced by plugging in, while the subtree ordering on Q. is induced by.. What we have done is to give a concrete representation for the witnesses to these relational properties. We may prove the following theorems: For && and && : Œˆ(Š äç è ÒÓ && Ý¹Ò Ð +Ñ; é ê Theorem (containment) Theorem (subtree) For º Œˆ. Q &&. : Õ!# zùd[ Q &&. Ý Õ!. ä ê The proofs of these theorems are easy inductions, on derivations for the ë direction, and on the structure of 8 Again, uet would write.)ì^121uí36 8ªîzï. ð,ñ <>òì7/ 8 îvï. ð. con.0ì(ó(bu ô ñ 6C6 Ò Õ or! for the õ direction. t is moreover the case that distinct Ò Õ s or! s on the right give rise to distinct derivations on the left, and vice versa. omit the details for reasons of space. 4 Towards an mplementation ecent extensions to the ASKELL type system, such as ansson and euring s LY have begun to realise the potential of generic programming for the development of highly reusable code, instantiable for a wide class of datatypes and characterised by equally generic theorems [97, BM98]. owever, these systems show no sign of allowing operations like which compute types generically by recursion over a closed syntax of type expressions, crucially regarding type variables as concrete objects. n a dependent type theory supporting inductive families of datatypes [yb91], syntaxes such as eg can be represented as ordinary data which can then be used to index the families like && which reflect them. becomes merely an operation on data, requiring no extension to the computational power of the theory. A programming language based on such a type theory, as envisaged in [McB99], would seem to be a promising setting in which to implement the technology described in this paper. This work is well under way in the ComputerAssisted easoning Group at urham. The payoffs from such an implementation seem likely to be substantial, extending far beyond applications to editing trees. A library of generic tools for working with contexts would allow us to define functions in terms of these higherlevel structures, manipulating data in large chunks, rather than one constructor at a time. Furthermore, in a dependently typed setting, a richer structure on data is ipso facto a richer structure on the indices of datatypes. t also seems highly desirable to extend the class of datatypes for which onehole contexts can be manipulated generically beyond the regular types, perhaps to include indexed families themselves. A concrete representation of onehole contexts for a syntax with binding has much to offer both metaprogramming and metatheory. 9
10 Â 5 Conclusions and Future Work This paper has shown that the onehole contexts for elements contained in a polymorphic regular type can be represented as the inhabitants of the regular type computed from the original by partial differentiation. This technology has been used to characterize data structures equivalent to uet s zippers onehole contexts for the subtrees of trees inhabiting arbitrary recursive types in that class. The operations which plug appropriate data into the holes of such contexts have also been exhibited. While this connection seems unlikely to be a mere coincidence, it is perhaps surprising to find a use for the laws of the infinitesimal calculus in such a discrete setting. There is no obvious notion of tangent or of limit for datatypes which might connect with our intuitions from school mathematics. Neither can offer at present any sense in which integration might mean more than just differentiation backwards. ne observation does, however, seem relevant: the syntactic operation of differentiating an expression with respect to generates an approximation to the change in value of that expression by summing the contributions generated by varying each of the s in the expression in turn. The derivative is thus the sum of terms corresponding to each onehole context for an in the expression. erhaps the key to the connection can be found by focusing not on what is being infinitesimally varied, but on what, for the sake of a linear approximation to the curve, is being kept the same. Apart from the implementation of this technology, and the development of a library of related generic utilities, this work opens up a host of fascinating theoretical possibilities one only has to open one s old school textbooks almost at random and ask what does this mean for datatypes?. There must surely also be a relationship between this work and oyal s general characterization of species of structure in terms of their Taylor series[oy87]. For regular types, NÉ makes a hole for a second in a onehole context from. More generally, gives all the o  hole contexts for s in s in each of the ouö orders with which they can be found. This strong resonance with Taylor series seems worthy of pursuit and is an active topic of research. n summary, the establishment of the connection between contexts and calculus is but the first step on a long road who knows where it will end? Acknowledgements feel very lucky to have stumbled on this interpretation of differentiation for datatypes with such potential for both utility and fascination, and has been intriguing me since the day made the connection (whilst changing trains at Shrewsbury). This work has benefited greatly from hours spent on trains, and enthusiastic discussions with many people, most notably Konstantinos Tourlas, ames McKinna, Alex Simpson, aniele Turi, Martin ofmann, Thorsten Altenkirch and, especially, eter ancock. eferences [BM98] oland Backhouse, atrik ansson, ohan euring, and Lambert Meertens. Generic programming an introduction. n S. oaitse Sweierstra, edro. enriques, and osé N. liveira, editors, Advanced Functional rogramming, Third nternational Summer School (AF 98); Braga, ortugal, volume 1608 of LNCS, pages Springer Verlag, [BM98] [B99] ichard Bird and Lambert Meertens. Nested datatypes. n Mathematics of rogram Construction, volume 1422 of LNCS, pages SpringerVerlag, ichard Bird and oss aterson. de Bruijn notation as a nested datatype. ournal of Functional rogramming, 9(1):77 92, [yb91] eter ybjer. nductive sets and families in MartinLöf s type theory. n G. uet and G. lotkin, editors, Logical Frameworks. CU,
11 [ue97] Gérard uet. The Zipper. ournal of Functional rogramming, 7(5): , [97] atrik ansson and ohan euring. oly a polytypic programming language extension. n roceedings of L 97, pages ACM, anuary [oy87] André oyal. Foncteurs analytiques et espèces de structures. n Combinatoire énumerative, volume 1234 of LNM, pages SpringerVerlag, [McB70] Fred McBride. Computer Aided Manipulation of Symbols. h thesis, Queen s University of Belfast, [McB99] Conor McBride. ependently Typed Functional rograms and their roofs. h thesis, University of Edinburgh,
A single minimal complement for the c.e. degrees
A single minimal complement for the c.e. degrees Andrew Lewis Leeds University, April 2002 Abstract We show that there exists a single minimal (Turing) degree b < 0 s.t. for all c.e. degrees 0 < a < 0,
More informationCHAPTER 7 GENERAL PROOF SYSTEMS
CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes
More informationDiscrete Mathematics, Chapter 5: Induction and Recursion
Discrete Mathematics, Chapter 5: Induction and Recursion Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 5 1 / 20 Outline 1 Wellfounded
More informationMAT2400 Analysis I. A brief introduction to proofs, sets, and functions
MAT2400 Analysis I A brief introduction to proofs, sets, and functions In Analysis I there is a lot of manipulations with sets and functions. It is probably also the first course where you have to take
More informationCS510 Software Engineering
CS510 Software Engineering Propositional Logic Asst. Prof. Mathias Payer Department of Computer Science Purdue University TA: Scott A. Carr Slides inspired by Xiangyu Zhang http://nebelwelt.net/teaching/15cs510se
More information[Refer Slide Time: 05:10]
Principles of Programming Languages Prof: S. Arun Kumar Department of Computer Science and Engineering Indian Institute of Technology Delhi Lecture no 7 Lecture Title: Syntactic Classes Welcome to lecture
More informationInduction and Recursion
Induction and Recursion Jan van Eijck June 3, 2003 Abstract A very important proof method that is not covered by the recipes from Chapter 3 is the method of proof by Mathematical Induction. Roughly speaking,
More informationPOLYTYPIC PROGRAMMING OR: Programming Language Theory is Helpful
POLYTYPIC PROGRAMMING OR: Programming Language Theory is Helpful RALF HINZE Institute of Information and Computing Sciences Utrecht University Email: ralf@cs.uu.nl Homepage: http://www.cs.uu.nl/~ralf/
More informationDegrees that are not degrees of categoricity
Degrees that are not degrees of categoricity Bernard A. Anderson Department of Mathematics and Physical Sciences Gordon State College banderson@gordonstate.edu www.gordonstate.edu/faculty/banderson Barbara
More informationWHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT?
WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT? introduction Many students seem to have trouble with the notion of a mathematical proof. People that come to a course like Math 216, who certainly
More informationInformation Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture  17 ShannonFanoElias Coding and Introduction to Arithmetic Coding
More informationSimulationBased Security with Inexhaustible Interactive Turing Machines
SimulationBased Security with Inexhaustible Interactive Turing Machines Ralf Küsters Institut für Informatik ChristianAlbrechtsUniversität zu Kiel 24098 Kiel, Germany kuesters@ti.informatik.unikiel.de
More informationParametric Domaintheoretic models of Linear Abadi & Plotkin Logic
Parametric Domaintheoretic models of Linear Abadi & Plotkin Logic Lars Birkedal Rasmus Ejlers Møgelberg Rasmus Lerchedahl Petersen IT University Technical Report Series TR007 ISSN 600 600 February 00
More informationCHAPTER 3 Numbers and Numeral Systems
CHAPTER 3 Numbers and Numeral Systems Numbers play an important role in almost all areas of mathematics, not least in calculus. Virtually all calculus books contain a thorough description of the natural,
More informationU.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra
U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory
More information2.2. Instantaneous Velocity
2.2. Instantaneous Velocity toc Assuming that your are not familiar with the technical aspects of this section, when you think about it, your knowledge of velocity is limited. In terms of your own mathematical
More informationIt is not immediately obvious that this should even give an integer. Since 1 < 1 5
Math 163  Introductory Seminar Lehigh University Spring 8 Notes on Fibonacci numbers, binomial coefficients and mathematical induction These are mostly notes from a previous class and thus include some
More informationRegular Languages and Finite Automata
Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a
More information1. R In this and the next section we are going to study the properties of sequences of real numbers.
+a 1. R In this and the next section we are going to study the properties of sequences of real numbers. Definition 1.1. (Sequence) A sequence is a function with domain N. Example 1.2. A sequence of real
More informationTREES IN SET THEORY SPENCER UNGER
TREES IN SET THEORY SPENCER UNGER 1. Introduction Although I was unaware of it while writing the first two talks, my talks in the graduate student seminar have formed a coherent series. This talk can be
More informationDomain Theory: An Introduction
Domain Theory: An Introduction Robert Cartwright Rebecca Parsons Rice University This monograph is an unauthorized revision of Lectures On A Mathematical Theory of Computation by Dana Scott [3]. Scott
More informationFull and Complete Binary Trees
Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full
More informationBindings, mobility of bindings, and the quantifier
ICMS, 26 May 2007 1/17 Bindings, mobility of bindings, and the quantifier Dale Miller, INRIASaclay and LIX, École Polytechnique This talk is based on papers with Tiu in LICS2003 & ACM ToCL, and experience
More informationML for the Working Programmer
ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming
More informationCHAPTER II THE LIMIT OF A SEQUENCE OF NUMBERS DEFINITION OF THE NUMBER e.
CHAPTER II THE LIMIT OF A SEQUENCE OF NUMBERS DEFINITION OF THE NUMBER e. This chapter contains the beginnings of the most important, and probably the most subtle, notion in mathematical analysis, i.e.,
More informationHomework 5 Solutions
Homework 5 Solutions 4.2: 2: a. 321 = 256 + 64 + 1 = (01000001) 2 b. 1023 = 512 + 256 + 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = (1111111111) 2. Note that this is 1 less than the next power of 2, 1024, which
More informationChapter 21: The Discounted Utility Model
Chapter 21: The Discounted Utility Model 21.1: Introduction This is an important chapter in that it introduces, and explores the implications of, an empirically relevant utility function representing intertemporal
More informationLectures 56: Taylor Series
Math 1d Instructor: Padraic Bartlett Lectures 5: Taylor Series Weeks 5 Caltech 213 1 Taylor Polynomials and Series As we saw in week 4, power series are remarkably nice objects to work with. In particular,
More informationEMBEDDING COUNTABLE PARTIAL ORDERINGS IN THE DEGREES
EMBEDDING COUNTABLE PARTIAL ORDERINGS IN THE ENUMERATION DEGREES AND THE ωenumeration DEGREES MARIYA I. SOSKOVA AND IVAN N. SOSKOV 1. Introduction One of the most basic measures of the complexity of a
More informationThe Trip Scheduling Problem
The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems
More informationMATH REVIEW KIT. Reproduced with permission of the Certified General Accountant Association of Canada.
MATH REVIEW KIT Reproduced with permission of the Certified General Accountant Association of Canada. Copyright 00 by the Certified General Accountant Association of Canada and the UBC Real Estate Division.
More informationElementary Number Theory We begin with a bit of elementary number theory, which is concerned
CONSTRUCTION OF THE FINITE FIELDS Z p S. R. DOTY Elementary Number Theory We begin with a bit of elementary number theory, which is concerned solely with questions about the set of integers Z = {0, ±1,
More informationCHAPTER 2. Logic. 1. Logic Definitions. Notation: Variables are used to represent propositions. The most common variables used are p, q, and r.
CHAPTER 2 Logic 1. Logic Definitions 1.1. Propositions. Definition 1.1.1. A proposition is a declarative sentence that is either true (denoted either T or 1) or false (denoted either F or 0). Notation:
More informationLow upper bound of ideals, coding into rich Π 0 1 classes
Low upper bound of ideals, coding into rich Π 0 1 classes Antonín Kučera the main part is a joint project with T. Slaman Charles University, Prague September 2007, Chicago The main result There is a low
More informationProduct types are finite labeled products of types. They are a generalization of cartesian product. Elements of product types are called records.
Chapter 6 Userdefined types The user is allowed to define his/her own data types. With this facility, there is no need to encode the data structures that must be manipulated by a program into lists (as
More informationThe Classes P and NP
The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the
More informationSets and functions. {x R : x > 0}.
Sets and functions 1 Sets The language of sets and functions pervades mathematics, and most of the important operations in mathematics turn out to be functions or to be expressible in terms of functions.
More informationCryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur
Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur Module No. # 01 Lecture No. # 05 Classic Cryptosystems (Refer Slide Time: 00:42)
More informationA Concrete Introduction. to the Abstract Concepts. of Integers and Algebra using Algebra Tiles
A Concrete Introduction to the Abstract Concepts of Integers and Algebra using Algebra Tiles Table of Contents Introduction... 1 page Integers 1: Introduction to Integers... 3 2: Working with Algebra Tiles...
More informationContinued Fractions and the Euclidean Algorithm
Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction
More informationCSC 310: Information Theory
CSC 310: Information Theory University of Toronto, Fall 2011 Instructor: Radford M. Neal Week 2 What s Needed for a Theory of (Lossless) Data Compression? A context for the problem. What are we trying
More informationHow many numbers there are?
How many numbers there are? RADEK HONZIK Radek Honzik: Charles University, Department of Logic, Celetná 20, Praha 1, 116 42, Czech Republic radek.honzik@ff.cuni.cz Contents 1 What are numbers 2 1.1 Natural
More informationGenerating models of a matched formula with a polynomial delay
Generating models of a matched formula with a polynomial delay Petr Savicky Institute of Computer Science, Academy of Sciences of Czech Republic, Pod Vodárenskou Věží 2, 182 07 Praha 8, Czech Republic
More information4. Factor polynomials over complex numbers, describe geometrically, and apply to realworld situations. 5. Determine and apply relationships among syn
I The Real and Complex Number Systems 1. Identify subsets of complex numbers, and compare their structural characteristics. 2. Compare and contrast the properties of real numbers with the properties of
More informationYou know from calculus that functions play a fundamental role in mathematics.
CHPTER 12 Functions You know from calculus that functions play a fundamental role in mathematics. You likely view a function as a kind of formula that describes a relationship between two (or more) quantities.
More informationCARDINALITY, COUNTABLE AND UNCOUNTABLE SETS PART ONE
CARDINALITY, COUNTABLE AND UNCOUNTABLE SETS PART ONE With the notion of bijection at hand, it is easy to formalize the idea that two finite sets have the same number of elements: we just need to verify
More informationChapter 2 Mathematical Background
Chapter 2 Mathematical Background We start this chapter with a summary of basic concepts and notations for sets and firstorder logic formulas, which will be used in the rest of the book. Our aim is to
More informationIt is time to prove some theorems. There are various strategies for doing
CHAPTER 4 Direct Proof It is time to prove some theorems. There are various strategies for doing this; we now examine the most straightforward approach, a technique called direct proof. As we begin, it
More informationA Framework for the Semantics of Behavioral Contracts
A Framework for the Semantics of Behavioral Contracts Ashley McNeile Metamaxim Ltd, 48 Brunswick Gardens, London W8 4AN, UK ashley.mcneile@metamaxim.com Abstract. Contracts have proved a powerful concept
More informationCost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation:
CSE341T 08/31/2015 Lecture 3 Cost Model: Work, Span and Parallelism In this lecture, we will look at how one analyze a parallel program written using Cilk Plus. When we analyze the cost of an algorithm
More informationA Note on Context Logic
A Note on Context Logic Philippa Gardner Imperial College London This note describes joint work with Cristiano Calcagno and Uri Zarfaty. It introduces the general theory of Context Logic, and has been
More informationMathematical Induction
Mathematical Induction In logic, we often want to prove that every member of an infinite set has some feature. E.g., we would like to show: N 1 : is a number 1 : has the feature Φ ( x)(n 1 x! 1 x) How
More informationCorrespondence analysis for strong threevalued logic
Correspondence analysis for strong threevalued logic A. Tamminga abstract. I apply Kooi and Tamminga s (2012) idea of correspondence analysis for manyvalued logics to strong threevalued logic (K 3 ).
More informationOPERATIONAL TYPE THEORY by Adam Petcher Prepared under the direction of Professor Aaron Stump A thesis presented to the School of Engineering of
WASHINGTON NIVERSITY SCHOOL OF ENGINEERING AND APPLIED SCIENCE DEPARTMENT OF COMPTER SCIENCE AND ENGINEERING DECIDING JOINABILITY MODLO GROND EQATIONS IN OPERATIONAL TYPE THEORY by Adam Petcher Prepared
More informationANALYTICAL MATHEMATICS FOR APPLICATIONS 2016 LECTURE NOTES Series
ANALYTICAL MATHEMATICS FOR APPLICATIONS 206 LECTURE NOTES 8 ISSUED 24 APRIL 206 A series is a formal sum. Series a + a 2 + a 3 + + + where { } is a sequence of real numbers. Here formal means that we don
More informationIndiana State Core Curriculum Standards updated 2009 Algebra I
Indiana State Core Curriculum Standards updated 2009 Algebra I Strand Description Boardworks High School Algebra presentations Operations With Real Numbers Linear Equations and A1.1 Students simplify and
More informationMathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson
Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement
More informationThe UnionFind Problem Kruskal s algorithm for finding an MST presented us with a problem in datastructure design. As we looked at each edge,
The UnionFind Problem Kruskal s algorithm for finding an MST presented us with a problem in datastructure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints
More informationBoolean Representations and Combinatorial Equivalence
Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discuss the applications of these representations for proving
More information31 is a prime number is a mathematical statement (which happens to be true).
Chapter 1 Mathematical Logic In its most basic form, Mathematics is the practice of assigning truth to welldefined statements. In this course, we will develop the skills to use known true statements to
More informationSome facts about polynomials modulo m (Full proof of the Fingerprinting Theorem)
Some facts about polynomials modulo m (Full proof of the Fingerprinting Theorem) In order to understand the details of the Fingerprinting Theorem on fingerprints of different texts from Chapter 19 of the
More information(Refer Slide Time: 00:00:56 min)
Numerical Methods and Computation Prof. S.R.K. Iyengar Department of Mathematics Indian Institute of Technology, Delhi Lecture No # 3 Solution of Nonlinear Algebraic Equations (Continued) (Refer Slide
More informationGraphs without proper subgraphs of minimum degree 3 and short cycles
Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract
More information3. Mathematical Induction
3. MATHEMATICAL INDUCTION 83 3. Mathematical Induction 3.1. First Principle of Mathematical Induction. Let P (n) be a predicate with domain of discourse (over) the natural numbers N = {0, 1,,...}. If (1)
More informationComputing divisors and common multiples of quasilinear ordinary differential equations
Computing divisors and common multiples of quasilinear ordinary differential equations Dima Grigoriev CNRS, Mathématiques, Université de Lille Villeneuve d Ascq, 59655, France Dmitry.Grigoryev@math.univlille1.fr
More informationFACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization
More informationChapter 7: Functional Programming Languages
Chapter 7: Functional Programming Languages Aarne Ranta Slides for the book Implementing Programming Languages. An Introduction to Compilers and Interpreters, College Publications, 2012. Fun: a language
More informationCharacterization of some binary words with few squares
Characterization of some binary words with few squares Golnaz Badkobeh a, Pascal Ochem b a Department of Computer Science, University of Sheffield, UK b CNRS  LIRMM, Montpellier, France Abstract Thue
More informationNondeterministic Semantics and the Undecidability of Boolean BI
1 Nondeterministic Semantics and the Undecidability of Boolean BI DOMINIQUE LARCHEYWENDLING, LORIA CNRS, Nancy, France DIDIER GALMICHE, LORIA Université Henri Poincaré, Nancy, France We solve the open
More informationSoftware quality improvement via pattern matching
Software quality improvement via pattern matching Radu Kopetz and PierreEtienne Moreau INRIA & LORIA {Radu.Kopetz, PierreEtienne.Moreau@loria.fr Abstract. Nested ifthenelse statements is the most common
More informationRevised Version of Chapter 23. We learned long ago how to solve linear congruences. ax c (mod m)
Chapter 23 Squares Modulo p Revised Version of Chapter 23 We learned long ago how to solve linear congruences ax c (mod m) (see Chapter 8). It s now time to take the plunge and move on to quadratic equations.
More informationA simple criterion on degree sequences of graphs
Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree
More informationCONTINUED FRACTIONS AND FACTORING. Niels Lauritzen
CONTINUED FRACTIONS AND FACTORING Niels Lauritzen ii NIELS LAURITZEN DEPARTMENT OF MATHEMATICAL SCIENCES UNIVERSITY OF AARHUS, DENMARK EMAIL: niels@imf.au.dk URL: http://home.imf.au.dk/niels/ Contents
More informationominimality and Uniformity in n 1 Graphs
ominimality and Uniformity in n 1 Graphs Reid Dale July 10, 2013 Contents 1 Introduction 2 2 Languages and Structures 2 3 Definability and Tame Geometry 4 4 Applications to n 1 Graphs 6 5 Further Directions
More informationA simple existence criterion for normal spanning trees in infinite graphs
1 A simple existence criterion for normal spanning trees in infinite graphs Reinhard Diestel Halin proved in 1978 that there exists a normal spanning tree in every connected graph G that satisfies the
More informationLinear Codes. Chapter 3. 3.1 Basics
Chapter 3 Linear Codes In order to define codes that we can encode and decode efficiently, we add more structure to the codespace. We shall be mainly interested in linear codes. A linear code of length
More informationCOFINAL MAXIMAL CHAINS IN THE TURING DEGREES
COFINA MAXIMA CHAINS IN THE TURING DEGREES WEI WANG, IUZHEN WU, AND IANG YU Abstract. Assuming ZF C, we prove that CH holds if and only if there exists a cofinal maximal chain of order type ω 1 in the
More informationA Subatomic Proof System
A Subatomic Proof System Andrea Aler Tubella Alessio Guglielmi University of Bath In this work we show a proof system, called SA, that generates propositional proofs by employing a single, linear, simple
More informationProblem Solving Basics and Computer Programming
Problem Solving Basics and Computer Programming A programming language independent companion to Roberge/Bauer/Smith, "Engaged Learning for Programming in C++: A Laboratory Course", Jones and Bartlett Publishers,
More informationChapter 1 LOGIC AND PROOF
Chapter 1 LOGIC AND PROOF To be able to understand mathematics and mathematical arguments, it is necessary to have a solid understanding of logic and the way in which known facts can be combined to prove
More informationStudents in their first advanced mathematics classes are often surprised
CHAPTER 8 Proofs Involving Sets Students in their first advanced mathematics classes are often surprised by the extensive role that sets play and by the fact that most of the proofs they encounter are
More informationMathematical Induction
Chapter 2 Mathematical Induction 2.1 First Examples Suppose we want to find a simple formula for the sum of the first n odd numbers: 1 + 3 + 5 +... + (2n 1) = n (2k 1). How might we proceed? The most natural
More informationA NOTE ON INITIAL SEGMENTS OF THE ENUMERATION DEGREES
A NOTE ON INITIAL SEGMENTS OF THE ENUMERATION DEGREES THEODORE A. SLAMAN AND ANDREA SORBI Abstract. We show that no nontrivial principal ideal of the enumeration degrees is linearly ordered: In fact, below
More informationNotes on Determinant
ENGG2012B Advanced Engineering Mathematics Notes on Determinant Lecturer: Kenneth Shum Lecture 918/02/2013 The determinant of a system of linear equations determines whether the solution is unique, without
More informationFor the purposes of this course, the natural numbers are the positive integers. We denote by N, the set of natural numbers.
Lecture 1: Induction and the Natural numbers Math 1a is a somewhat unusual course. It is a proofbased treatment of Calculus, for all of you who have already demonstrated a strong grounding in Calculus
More informationFormal Borel sets a prooftheoretic approach
1/29 Formal Borel sets a prooftheoretic approach Alex Simpson LFCS, School of Informatics University of Edinburgh, UK Formal Borel sets a prooftheoretic approach 2/29 Context of talk Domain theory Topological
More informationCopyrighted Material. Chapter 1 DEGREE OF A CURVE
Chapter 1 DEGREE OF A CURVE Road Map The idea of degree is a fundamental concept, which will take us several chapters to explore in depth. We begin by explaining what an algebraic curve is, and offer two
More informationNODAL ANALYSIS. Circuits Nodal Analysis 1 M H Miller
NODAL ANALYSIS A branch of an electric circuit is a connection between two points in the circuit. In general a simple wire connection, i.e., a 'shortcircuit', is not considered a branch since it is known
More informationFormal Languages and Automata Theory  Regular Expressions and Finite Automata 
Formal Languages and Automata Theory  Regular Expressions and Finite Automata  Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March
More informationInformation, Entropy, and Coding
Chapter 8 Information, Entropy, and Coding 8. The Need for Data Compression To motivate the material in this chapter, we first consider various data sources and some estimates for the amount of data associated
More informationMathematics Course 111: Algebra I Part IV: Vector Spaces
Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 19967 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are
More informationChapter 7: Products and quotients
Chapter 7: Products and quotients Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 42, Spring 24 M. Macauley (Clemson) Chapter 7: Products
More informationTheory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras
Theory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture No. # 31 Recursive Sets, Recursively Innumerable Sets, Encoding
More informationfacultad de informática universidad politécnica de madrid
facultad de informática universidad politécnica de madrid On the Confluence of CHR Analytical Semantics Rémy Haemmerlé Universidad olitécnica de Madrid & IMDEA Software Institute, Spain TR Number CLI2/2014.0
More informationCHAPTER 5: MODULAR ARITHMETIC
CHAPTER 5: MODULAR ARITHMETIC LECTURE NOTES FOR MATH 378 (CSUSM, SPRING 2009). WAYNE AITKEN 1. Introduction In this chapter we will consider congruence modulo m, and explore the associated arithmetic called
More informationTHE SEARCH FOR NATURAL DEFINABILITY IN THE TURING DEGREES
THE SEARCH FOR NATURAL DEFINABILITY IN THE TURING DEGREES ANDREW E.M. LEWIS 1. Introduction This will be a course on the Turing degrees. We shall assume very little background knowledge: familiarity with
More informationRecursive Algorithms. Recursion. Motivating Example Factorial Recall the factorial function. { 1 if n = 1 n! = n (n 1)! if n > 1
Recursion Slides by Christopher M Bourke Instructor: Berthe Y Choueiry Fall 007 Computer Science & Engineering 35 Introduction to Discrete Mathematics Sections 717 of Rosen cse35@cseunledu Recursive Algorithms
More informationRalf Hinze Generic Programs and Proofs
Ralf Hinze Generic Programs and Proofs Bonn, 2000 Für Anja, Lisa und Florian Brief contents 1 Introduction 1 2 Background 15 3 Generic programs 53 4 Generic proofs 87 5 Examples 107 6 Generic Haskell 147
More informationTruth Conditional Meaning of Sentences. Ling324 Reading: Meaning and Grammar, pg
Truth Conditional Meaning of Sentences Ling324 Reading: Meaning and Grammar, pg. 6987 Meaning of Sentences A sentence can be true or false in a given situation or circumstance. (1) The pope talked to
More informationDegrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets.
Degrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets. Logic is the study of reasoning. A language of propositions is fundamental to this study as well as true
More information