Induction, Coinduction, and Adjoints

Total Page:16

File Type:pdf, Size:1020Kb

Induction, Coinduction, and Adjoints Electronic Notes in Theoretical Computer Science 69 (2003) URL: http://www.elsevier.nl/locate/entcs/volume69.html 19 pages Induction, Coinduction, and Adjoints Robin Cockett 1 Department of Computer Science, University of Calgary [email protected] Luigi Santocanale 2 LaBRI, Universit´e Bordeaux 1 [email protected] Abstract We investigate the reasons for which the existence of certain right adjoints implies the existence of some final coalgebras, and vice-versa. In particular we prove and discuss the following theorem which has been partially available in the literature: let F G be a pair of adjoint functors, and suppose that an initial algebra F(X) of the functor H(Y )=X + F (Y ) exists; then a right adjoint G(X)toF(X) exists if and only if a final coalgebra Gˇ(X) of the functor K(Y )=X × G(Y ) exists. Motivated by the problem of understanding the structures that arise from initial algebras, we show the following:if F is a left adjoint with a certain commutativity property, then an initial algebra of H(Y )=X + F (Y ) generates a subcategory of functors with inductive types where the functorial composition is constrained to be a Cartesian product. 1 Introduction One goal of this paper is to explain why the set N ⇒ X of sequences with values in X has two distinct and apparently unrelated characterizations: on the one hand, this set is the object part of a well known functor that is deter- mined up to unique natural isomorphism as the right adjoint to the functor N × X; on the other hand, this set carries the structure of a final coalgebra of the functor KX (Y )=X ×Y and, as such, it is again determined up to unique isomorphism. Here N is used to denote the set of natural numbers. 1 Research partially supported by NSERC, Canada. 2 Research supported by Canada’s NSERC and the Pacific Institute for the Mathematical Sciences. The research was carried at the Department of Computer Science, University of Calgary. The author also aknowledges financial support from the European Community through a Marie Curie Individual Fellowship. c 2003 Published by Elsevier Science B. V. 101 Cockett and Santocanale The results that we are going to present in this paper are therefore meant to illustrate how two different paradigms of computation are related. One is the paradigm of functional programming that has developed from the theory of the λ-calculus and its extensions with inductive types, see for example [1]; here the Cartesian closed structure is taken as primitive together with certain initial algebras of functors. The second paradigm of programming develops from the theory of objects and of interactive computation, where coinductive methods are the basic ingredients. Thus, categorically, the basic ingredients are here final coalgebras of functors. As a final coalgebra of the functor KX (Y )= X × Y ,thesetN ⇒ X is usually called the set of streams over X; in [2,3] the mathematical ideas arising from coinduction have been proposed as primitives for computation with objects of analysis. Also it is worth remembering that a Cartesian closed category with inductive and coinductive types can be used directly as a basic of a programming language (e.g. Charity [4,5]); with the algebraic results that we are going to present, we mean to suggest correct program transformations and shed some lights on the topic of equivalence of programs. It should be noticed at this stage that the set N × X has also a double algebraic characterization: it is the product of two sets as well as the initial algebra of the functor HX (Y )=X +Y . The categorical structure arising from the assumption that an initial algebra of this functor exists for each object X was investigated in [6]. There it was also observed that, in a topos C with a natural number object N, the Cartesian product N × X is an initial algebra of HX (Y ) and the exponential N ⇒ X is a final coalgebra of KX (Y ). Similar observations arise by substituting the natural number object N with the free monoid A∗ over a set A.ThesetsA∗ × X and A∗ ⇒ X have a similar double algebraic description: the first emphasizes the fact that one is a Cartesian product of two sets and the other is its right adjoint; the second the fact that one is the parameterized initial algebra of HX (Y )=X +(A×Y ) and the other the parameterized final coalgebra of KX (Y )=X × (A ⇒ Y ). It should be remarked how this double perspective is useful: for example, the latter description allows us to build the free monoid over A in an asymmetric way as the set of lists over an alphabet. Similarly, we are now acquainted to think of the set of infinite A-branching trees with X-data at each node as greatest solution of the functorial equation Y = X × (A ⇒ Y ); however the concrete representation of this solution by means of the set of functions from the free monoid is the basic tool to describe further kinds of infinite trees and to find explicit representations of other coinductive datatypes [7,8]. It might be asked what are the assumptions on a category C that are needed to derive a theorem of the above kind, stating that an adjoint has to be isomorphic to a final coalgebra. That is, how far can the hypothesis that C be a topos, as noted in [6], be relaxed? In fact, the purpose of this paper is to show that the assumptions needed on C are no more than what is required in order to express the problem. We prove the following theorem: if F G is pair of 102 Cockett and Santocanale adjoint functors, if an initial algebra F(X) of the functor HX (Y )=X +F (Y ) exists for each X,andifF(X) is a left adjoint with right adjoint G(X),then the latter is a final coalgebra of the functor KX (Y )=X × G(Y ). It should be observed that the proof of this theorem depends on the fact that the functor F(X) can also be characterized as the free F -algebra over X. This theorem is usefully paired with the observation that if a category is monoidal closed, then an initial algebra F(X) of the above functor can be computed as F(I) ⊗ X where I is the unit object of the monoidal structure. These two theorems can be used to show that in a monoidal closed category the presence of some inductive types imply the existence of some (dual) coinductive types. We shall describe how this theorem may be applied in some non standard situations. The converse of this theorem is also true: if F G is pair of adjoint functors, if an initial algebra F (X) of the functor HX (Y )=X + F (Y ) exists for each X, if a final coalgebra Gˇ(X) of the functor KX (Y )=X ×G(Y ) exists for each X,thenF Gˇ is an adjoint pair. This statement actually follows from the observations developed in [9] for input-output categorical machines in a straightforward way, but its consequences are worth noticing. For example, the statement implies that as soon as the coinductive type of streams is added to the basic setting of a Cartesian category with a natural number object in the sense of [10], then the Ackermann function becomes definable. Thus the arithmetic of these categories is more than primitive recursive. This raises questions about the power of the arithmetic that can be ex- pressed in settings where the inductive and coinductive data, rather than the closed structure, are fundamental. For example in µ-bicomplete categories [11,12] the product, in general, does not distribute over the coproduct and yet this result guarantees the presence of certain adjoints. In particular, for a fixed finite set A,thepowerA ∗ X –theA-fold coproduct of X –isadjointto the copower (−)A –theA-fold product of X, and this result can be used to generate a family of adjoint functors. Relying on observations of Burroni [6] and Par´e and Roman [13], we show that the same process by which a family of adjoint functors is generated is also responsible for generating a nonstan- dard Cartesian structure with inductive types. Hence, in these settings, it becomes possible to code all the primitive recursive functions. It remains an open question, however, as to whether any other total recursive function can be represented. The paper is structured as follows: in section 2 we settle our discussion on initial algebras and final coalgebras in a 2-categorical context and introduce the notions of an F -list 1-cell and of a G-tree 1-cell in a 2-category; we provide some examples and discuss their basic properties. In section 3 we analyze the theorem that relates the existence of adjoints to the existence of final coalgebras, whenever the dual initial algebra is assumed to exists. In section 4 we show that the theory of natural number objects developed by Burroni, Par´e and Roman, can be lifted to encompass F -list 1-cells, whenever F is a left adjoint and has a certain commutativity property. 103 Cockett and Santocanale 2 Definitions 2.1 Notation. We settle our discussion in a 2-category C, as this will be enough to export our results to bicategories, by the well known theorem that states that every bicategory is biequivalent to a 2-category. We use juxtaposition to denote the horizontal composition of 1-cells, thus GF stands for the composition of G : C ✛ D and F : D ✛ E.
Recommended publications
  • Functional Programming Applied to Computational Algebra
    THESIS FUNCTIONAL PROGRAMMING APPLIED TO COMPUTATIONAL ALGEBRA Submitted by Ian H. Kessler Department of Mathematics In partial fulfillment of the requirements For the Degree of Master of Science Colorado State University Fort Collins, Colorado Fall 2018 Master’s Committee: Advisor: James B. Wilson Amit Patel Hamidreza Chitsaz Copyright by Ian H. Kessler 2018 All Rights Reserved ABSTRACT FUNCTIONAL PROGRAMMING APPLIED TO COMPUTATIONAL ALGEBRA Underlying many, if not all, areas of mathematics is category theory, an alternative to set the- ory as a foundation that formalizes mathematical structures and relations between them. These relations abstract the idea of a function, an abstraction used throughout mathematics as well as throughout programming. However, there is a disparity between the definition of a function used in mathematics from that used in mainstream programming. For mathematicians to utilize the power of programming to advance their mathematics, there is a demand for a paradigm of pro- gramming that uses mathematical functions, as well as the mathematical categories that support them, as the basic building blocks, enabling programs to be built by clever mathematics. This paradigm is functional programming. We wish to use functional programming to represent our mathematical structures, especially those used in computational algebra. ii ACKNOWLEDGEMENTS I want to thank God for the opportunity to go to graduate school, and for giving me the strength to persevere through it. I want to thank my mom, dad, and my brothers, Jerry and Joel, for believing in me. I am grateful for my mom for giving me emotional support and words of encouragement throughout my time in graduate school.
    [Show full text]
  • IBM Cognos Analytics - Reporting Version 11.1
    IBM Cognos Analytics - Reporting Version 11.1 User Guide IBM © Product Information This document applies to IBM Cognos Analytics version 11.1.0 and may also apply to subsequent releases. Copyright Licensed Materials - Property of IBM © Copyright IBM Corp. 2005, 2021. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at " Copyright and trademark information " at www.ibm.com/legal/copytrade.shtml. The following terms are trademarks or registered trademarks of other companies: • Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. • Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. • Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. • Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. • UNIX is a registered trademark of The Open Group in the United States and other countries. • Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates.
    [Show full text]
  • Joyal's Arithmetic Universe As List-Arithmetic Pretopos 1
    Theory and Applications of Categories, Vol. 24, No. 3, 2010, pp. 39{83. JOYAL'S ARITHMETIC UNIVERSE AS LIST-ARITHMETIC PRETOPOS MARIA EMILIA MAIETTI Abstract. We explain in detail why the notion of list-arithmetic pretopos should be taken as the general categorical definition for the construction of arithmetic universes introduced by Andr´eJoyal to give a categorical proof of G¨odel'sincompleteness results. We motivate this definition for three reasons: first, Joyal's arithmetic universes are list- arithmetic pretopoi; second, the initial arithmetic universe among Joyal's constructions is equivalent to the initial list-arithmetic pretopos; third, any list-arithmetic pretopos enjoys the existence of free internal categories and diagrams as required to prove G¨odel's incompleteness. In doing our proofs we make an extensive use of the internal type theory of the categorical structures involved in Joyal's constructions. The definition of list-arithmetic pretopos is equivalent to the general one that I came to know in a recent talk by Andr´eJoyal. 1. Introduction The categories of topoi and pretopoi can be viewed as universes of abstract sets in which to develop mathematics (see [LR03, Joh77, JM95, MM92, Hyl82]). Joyal's arithmetic universes provide further examples of such universes. Andr´eJoyal introduced arithmetic universes in some lectures given in the seventies, all still unpublished, to provide a categorical proof of G¨odel'sincompleteness theorems. He defined arithmetic universes by giving a general construction of examples including the free initial one. He then intended to prove incompleteness by mimicking the diagonal argument of Cantor's theorem within the initial arithmetic universe [Joy05].
    [Show full text]
  • List Objects with Algebraic Structure
    List Objects with Algebraic Structure Marcelo Fiore1 and Philip Saville2 1 Computer Laboratory, University of Cambridge, Cambridge, UK [email protected] 2 Computer Laboratory, University of Cambridge, Cambridge, UK [email protected] Abstract We introduce and study the notion of list object with algebraic structure. The first key aspect of our development is that the notion of list object is considered in the context of monoidal structure; the second key aspect is that we further equip list objects with algebraic structure in this setting. Within our framework, we observe that list objects give rise to free monoids and moreover show that this remains so in the presence of algebraic structure. In addition, we provide a basic theory explicitly describing as an inductively defined object such free monoids with suitably compatible algebraic structure in common practical situations. This theory is accompanied by the study of two technical themes that, besides being of interest in their own right, are important for establishing applications. These themes are: parametrised initiality, central to the universal property defining list objects; and approaches to algebraic structure, in particular in the context of monoidal theories. The latter leads naturally to a notion of nsr (or near semiring) category of independent interest. With the theoretical development in place, we touch upon a variety of applications, considering Natural Numbers Objects in domain theory, giving a universal property for the monadic list transformer, providing free instances of algebraic extensions of the Haskell Monad type class, elucidating the algebraic character of the construction of opetopes in higher-dimensional algebra, and considering free models of second-order algebraic theories.
    [Show full text]
  • Continuity and Geometric Logic
    Continuity and Geometric Logic Steven Vickers1 School of Computer Science, University of Birmingham, Birmingham, B15 2TT. Abstract This paper is largely a review of known results about various aspects of geomet- ric logic. Following Grothendieck's view of toposes as generalized spaces, one can take geometric morphisms as generalized continuous maps. The constructivist constraints of geometric logic guarantee the continuity of maps constructed, and can do so from two different points of view: for maps as point transformers and maps as bundles. Keywords: geometric logic, topos, locale, bundle 2010 MSC: 03G30 18C10 06D22 1. Introduction Geometric logic has arisen in topos theory out of the fact that toposes (by \topos" unqualified we shall always mean Grothendieck topos) may be described as classifying toposes for geometric theories { that is to say, any topos may be presented as being generated by a generic model of some geometric theory. The historical roots of this idea must surely go back to Grothendieck's dic- tum that \A topos is a generalized topological space" [10], but there is a specific technical understanding that underlies this: that for the the purposes of sheaf cohomology, what was important was particular categorical structure and prop- erties of categories of sheaves over spaces; and that it was fruitful to generalize to other categories (the toposes) with the same structure and properties. I have not been able to trace in detail how this developed over the 1970s into the idea of toposes as geometric theories as mentioned above. Some of the difficulties are described in the 1986 paper Theories as Categories [9], which grew out of notes I made on a talk given by Mike Fourman to computer scientists and gave in outline form some of the ideas and results on which the present paper is based.
    [Show full text]
  • Classifying Topoi and Preservation of Higher Order Logic by Geometric
    Classifying Topoi and Preservation of Higher Order Logic by Geometric Morphisms by Shawn J. Henry A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Mathematics) in The University of Michigan 2013 arXiv:1305.3254v1 [math.LO] 14 May 2013 Doctoral Committee: Professor Andreas R. Blass, Chair Professor Mel Hochster Assistant Professor Scott Schneider Professor G. Peter Scott Associate Professor James P. Tappenden © Shawn J. Henry 2018 All Rights Reserved ACKNOWLEDGEMENTS I am most indebted to my advisor, Andreas Blass, for his patience and for sharing a small part of his immense knowledge with me. I would also like to thank Fran¸cois Dorais for encouraging me not to give up when I realized that topos theory is hard. ii TABLE OF CONTENTS ACKNOWLEDGEMENTS .................................. ii CHAPTER I. Introduction ....................................... 1 II. Internal Geometric Theories and Classifying Topoi .............. 5 2.1 TopoiandGeometricMorphisms. 5 2.2 HigherOrderLogic ................................ 7 2.3 InternalPropositionalTheories. ... 11 2.4 Classifying Topoi for Internal Propositional Theories . ...... 13 2.5 InternalGeometricTheories . 16 2.6 Classifying Topoi for Internal Geometric Theories . ..... 22 III. Infinitary Deductions and Inductive Constructions ............... 29 3.1 InductiveConstructions. 29 3.2 The Grothendieck Deduction Calculus for Internal PropositionalTheories. 30 3.3 The Grothendieck Deduction Calculus for Internal Geometric Theories . 32 3.4 Downward
    [Show full text]
  • An Induction Principle for Consequence in Arithmetic Universes
    An induction principle for consequence in arithmetic universes Maria Emilia Maietti Dipartimento di Matematica Pura ed Applicata, University of Padova, via Trieste n.63, 35121 Padova, Italy [email protected] Steven Vickers School of Computer Science, University of Birmingham, Birmingham, B15 2TT, UK [email protected] February 15, 2012 Abstract Suppose in an arithmetic unverse we have two predicates φ and for natural numbers, satisfying a base case φ(0) ! (0) and an induction step that, for generic n, the hypothesis φ(n) ! (n) allows one to deduce φ(n + 1) ! (n + 1). Then it is already true in that arithmetic universe that (8n)(φ(n) ! (n)). This is substantially harder than in a topos, where cartesian closedness allows one to form an exponential φ(n) ! (n). The principle is applied to the question of locatedness of Dedekind sections. The development analyses in some detail a notion of \subspace" of an arithmetic universe, including open or closed subspaces and a boolean algebra generated by them. There is a lattice of subspaces generated by the opens and the closed, and it is isomorphic to the free Boolean algebra over the distributive lattice of subobjects of 1 in the arithmetic universe. 1 Introduction As has often been said, toposes embody two quite different ideas, under which they are considered either as generalized universes of sets or as generalized topological spaces. Our aim here is to explore the same idea when applied to arithmetic universes (see [Joy05], [Mai10a]) instead of toposes. The geometric structure of Grothendieck toposes { that is to say, the structure that is used to generate them when one builds classifying toposes, that is preserved by inverse image functors for geometric morphisms, and that appears in Giraud's Theorem { is the set-indexed colimits and finite limits.
    [Show full text]
  • Shapely Types and Shape Polymorphism
    Shapely Types and Shape Polymorphism C. Barry Jay 1 and 3.R.B. Cockett 2 School of Computing Sciences, University of Technology, Sydney, PO Box 123 Broadway, 2007, Australia 2 Department of Computer Science, University of Calgary, Calgary, Alberta, T2N 1N4, Canada Abstract. Shapely types separate data, represented by lists, from shape, or structure. This separation supports shape polymorphism, where oper- ations are defined for arbitrary shapes, and shapely operations, for which the shape of the result is determined by that of the input, permitting static shape checking. They include both arrays and the usual algebraic types (of trees, graphs, etc.), and are closed under the formation of initial algebras. 1 Introduction Consider the operation map which applies a function to each element of a list. In existing functional languages, its type is (oL---+fl)---+a,list--+/3 list where ~ and/3 may range over any types. This da~a polymorphism allows the data (c~ and/3) to vary, but uses a fixed shape, list. Shape polymorphism fixes the data., but allows the shape to vary, so that, for types A and B, instances of map include (A-+B)-+A tree-+B tree and (A-+B)-+A matrix-~B matrix In each case map(f) applies f to the data (the leaves or entries), while leaving the shape fixed. Typically, both kinds of polymorphism co-exist, so that map can vary both its data and its shape. Shape polymorphism applies to the usual algebraic types, (and others, such as matrices) but, being restricted to covariant constructions, does not address contravariant types of, say, functions.
    [Show full text]
  • Sonicos 6.2.6 Content Filtering Service (CFS) 4.0 Feature Guide August 2016
    SonicOS 6.2.6 Content Filtering Service (CFS) 4.0 Feature Guide August 2016 This feature guide describes the SonicOS 6.2.6 Content Filtering Service (CFS) release 4.0. CFS 4.0 delivers content filtering enforcement for educational institutions, businesses, libraries and government agencies. These organizations can control the websites students and employees can access using their IT-issued computers, while behind the organization’s firewall. To pics: • CFS 4.0 Overview • CFS 4.0 Features • Comparison of CFS • Supported platforms • Product licensing • About Dell CFS 4.0 Overview CFS 4.0 compares requested websites against a massive cloud database that contains millions of rated URIs, IP addresses and websites. It also provide administrators with the tools to create and apply policies that allow or deny access to sites based on individual or group identity or by time of day. CFS 4.0 has been redesigned to improve performance and ease of use. To achieve this goal, duplicate code was removed, and the CFS framework and workflow was redesigned. In prior versions, features were fragmented across categories, but they have now been consolidated under the CFS category to enable central management. More accurate filtering options have been provided, and the code has been improved to handle small packets. For more information on how to upgrade from CFS 3.0, refer to SonicOS 6.2.6 Content Filtering Service (CFS) 4.0 Upgrade Guide. When processing packets, CFS 4.0 follows this workflow: 1 A packet arrives and is examined by CFS. 2 CFS checks it against the configured exclusion addresses and allows it through if a match is found.
    [Show full text]
  • A Predicative Variant of Hyland's Effective Topos
    A predicative variant of Hyland’s Effective Topos Maria Emilia Maietti and Samuele Maschio Dipartimento di Matematica, Universit`adi Padova, Italy maietti/[email protected] Abstract Here, we present a subcategory pEff of Hyland’s Effective Topos Eff which can be considered a predicative variant of Eff itself. The construction of pEff is motivated by the desire of providing a “predicative” categorical universe of realizers to model the Minimalist Foundation for constructive mathematics which was ideated by the first author with G. Sambin in 2005 and completed into a two-level formal system by the first author in 2009. pEff is a “predicative” categorical universe because its objects and morphisms can be formalized in Feferman’s predicative weak theory of d inductive definitions ID1. Moreover, it is a predicative variant of the Effective Topos for the following reasons. First, pEff is a list-arithmetic locally cartesian closed pretopos of de- d finable objects in ID1 with a fibred category of small objects over pEff and a (non-small) classifier of small subobjects. Second, it happens to coincide with the exact completion on the lex d category defined as a predicative rendering in ID1 of the subcategory of Eff of recursive functions. As a consequence it validates the Formal Church’s thesis and it embeds in Eff by preserving the list-arithmetic locally cartesian closed pretopos structure. Keywords: Realizability topos, Lawvere’s hyperdoctrines, Type theory AMS classification: 03F50,18D30,18C99, 03D70 arXiv:1806.08519v1 [math.LO] 22 Jun 2018 1 Introduction As reported in [26] Hyland’s paper “The Effective Topos” [7] gave input to a whole new strand of research about realizability and its applications to logic, mathematics and computer science.
    [Show full text]
  • Sketches for Arithmetic Universes
    Sketches for arithmetic universes Steven Vickers School of Computer Science, University of Birmingham [email protected] July 11, 2018 Abstract A theory of sketches for arithmetic universes (AUs) is developed, as a base-independent surrogate for suitable geometric theories. A restricted notion of sketch, called here context, is defined with the property that every non-strict model is uniquely isomorphic to a strict model. This allows us to reconcile the syntactic, dealt with strictly using universal algebra, with the semantic, in which non-strict models must be considered. For any context T, a concrete construction is given of the AU AUhTi freely generated by it. A 2-category Con of contexts is defined, with a full and faithful 2- functor to the 2-category of AUs and strict AU-functors, given by T 7! AUhTi. It has finite pie limits, and also all pullbacks of a certain class of \extension" maps. Every object, morphism or 2-cell of Con is a finite structure. Maths Subject Classification 18C30; 03G30 This is a preprint version of [Vic16]. 1 Introduction My 1999 paper \Topical Categories of Domains" [Vic99], which used geometric logic to deal with toposes as generalized spaces, makes the following comment on the logic. It seems to us that in the work of the paper the infinities are re- stricted to those that can be accessed effectively through free al- gebra constructions. This emboldens us to hope that the full ge- ometric logic is unnecessary, that it suffices to have coherent logic with assorted free algebras, and that [Grothendieck toposes] could be replaced by Joyal's arithmetic universes [AUs].
    [Show full text]
  • Official Geogebra Manual
    GeoGebra Manual The official manual of GeoGebra. PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Thu, 15 Dec 2011 01:15:41 UTC Contents Articles Introduction 1 Compatibility 3 Installation Guide 4 Objects 6 Free, Dependent and Auxiliary Objects 6 Geometric Objects 6 Points and Vectors 7 Lines and Axes 8 Conic sections 8 Functions 9 Curves 10 Inequalities 10 Intervals 11 General Objects 11 Numbers and Angles 12 Texts 13 Boolean values 14 Complex Numbers 15 Lists 15 Matrices 17 Action Objects 18 Selecting objects 19 Change Values 19 Naming Objects 20 Animation 21 Tracing 22 Object Properties 22 Labels and Captions 23 Advanced Features 25 Object Position 25 Conditional Visibility 25 Dynamic Colors 26 LaTeX 27 Layers 28 Scripting 28 Tooltips 30 Tools 31 Tools 31 Movement Tools 32 Move Tool 32 Record to Spreadsheet Tool 32 Rotate around Point Tool 33 Point Tools 33 New Point Tool 33 Attach / Detach Point Tool 34 Complex Number Tool 34 Point on Object Tool 34 Intersect Two Objects Tool 35 Midpoint or Center Tool 35 Line Tools 35 Vector from Point Tool 36 Ray through Two Points Tool 36 Segment with Given Length from Point Tool 36 Line through Two Points Tool 36 Segment between Two Points Tool 37 Vector between Two Points Tool 37 Special Line Tools 37 Best Fit Line Tool 38 Parallel Line Tool 38 Angle Bisector Tool 38 Perpendicular Line Tool 39 Tangents Tool 39 Polar or Diameter Line Tool 39 Perpendicular Bisector Tool 40 Locus Tool 40 Polygon Tools 41 Rigid Polygon Tool
    [Show full text]