### Abstract

We implemented a type class for "to-string" functions, similar to Haskell's Show class. Moreover, we provide instantiations for Isabelle/HOL's standard types like bool, prod, sum, nats, ints, and rats. It is further possible, to automatically derive show functions for arbitrary user defined datatypes similar to Haskell's "deriving Show".

### License

GNU Lesser General Public License (LGPL)

### History

April 10, 2015
  Moved development for old-style datatypes into subdirectory "Old_Datatype".
March 11, 2015
  Adapted development to new-style (BNF-based) datatypes.

### Topics

- Computer science/Functional programming

### Session Show

- Show
- Show_Instances
- Show_Poly
- Show_Real
- Show_Complex
- Show_Real_Impl

### Session Old_Datatype_Show

- Old_Show
- Old_Show_Generator
- Old_Show_Instances
- Old_Show_Examples

### Depends on

- Deriving class instances for datatypes
- Generating linear orders for datatypes

### Used by

- LL(1) Parser Generator
- MiniSail - A kernel language for the ISA specification language SAIL
- Two algorithms based on modular arithmetic: lattice basis reduction and Hermite normal form computation
- AI Planning Languages Semantics
- A Verified Code Generator from Isabelle/HOL to CakeML
- Monadification, Memoization and Dynamic Programming
- CakeML
- Dictionary Construction
- The Factorization Algorithm of Berlekamp and Zassenhaus
- Polynomial Factorization
- Derivatives of Logical Formulas
- Certification Monads
- XML
- Affine Arithmetic
- Implementing field extensions of the form Q[sqrt(b)]
- Ordinary Differential Equations
- Executable Multivariate Polynomials

### Auto-related entries

- Separation Algebra

## Cite

×

Show-AFP

    @article{Show-AFP,
      author  = {Christian Sternagel and René Thiemann},
      title   = {Haskell's Show Class in Isabelle/HOL},
      journal = {Archive of Formal Proofs},
      month   = {July},
      year    = {2014},
      note    = {\url{https://isa-afp.org/entries/Show.html},
                 Formal proof development},
      ISSN    = {2150-914x},
    }

Download

## Download

× Download latest

Older releases:

- Sep 13, 2023 : Isabelle2023
- Oct 27, 2022 : Isabelle2022
- Dec 14, 2021 : Isabelle2021-1
- Feb 23, 2021 : Isabelle2021
- Apr 20, 2020 : Isabelle2020
- Jun 11, 2019 : Isabelle2019
- Aug 16, 2018 : Isabelle2018
- Oct 10, 2017 : Isabelle2017
- Dec 17, 2016 : Isabelle2016-1
- Feb 22, 2016 : Isabelle2016
- May 27, 2015 : Isabelle2015
- Aug 29, 2014 : Isabelle2014
- Aug 28, 2014 : Isabelle2014