03128nam 22005535 450 991068256980332120251008165056.097814842925879781484292594148429259610.1007/978-1-4842-9259-4(CKB)5580000000525026(DE-He213)978-1-4842-9259-4(CaSebORM)9781484292594(OCoLC)1373611992(OCoLC-P)1373611992(Perlego)4515907(EXLCZ)99558000000052502620230317d2023 u| 0engurnn|008mamaatxtrdacontentcrdamediacrrdacarrierIntroduction to Dependent Types with Idris Encoding Program Proofs in Types /by Boro Sitnikovski1st ed. 2023.Berkeley, CA :Apress :Imprint: Apress,2023.1 online resource (XVIII, 157 p. 139 illus.) Includes index.9781484292587 1484292588 Chapter 1: Formal Systems -- Chapter 2: Classical Mathematical Logic -- Chapter 3: Type Theory -- Chapter 4: Programming in Idris -- Chapter 5: Proving in Idris.Dependent types are a concept that allows developers to write proof-carrying code. Idris is a programming language that supports dependent types. This book will teach you the mathematical foundations of Idris as well as how to use it to write software and mathematically prove properties. The first part of the book serves as an introduction to the language's underlying theories. It starts by reviewing formal systems and mathematical logical systems as foundational building blocks, then gradually builds up to dependent types. Next, you'll learn type theory for dependent types. Following this, you'll explore the Idris programming language and conclude by exploring the depths of formal systems and type checkers by implementing them. Introduction to Dependent Types with Idris will walk you through simple examples through more advanced techniques, stepping up the difficulty as you gain more knowledge. Every chapter includes a set of exercises based on what it covered to further cement your learning. No specialized knowledge of mathematics is expected beyond the basics, so it is perfect for novices. You will: Understand Lambda calculus and dependent types Gain insight into functional programming Write mathematical proofs with Idris.Programming languages (Electronic computers)Software engineeringProgramming LanguageSoftware EngineeringProgramming languages (Electronic computers)Software engineering.Programming Language.Software Engineering.005.13Sitnikovski Boroauthttp://id.loc.gov/vocabulary/relators/aut847871OCoLC-POCoLC-PBOOK9910682569803321Introduction to Dependent Types with Idris3287700UNINA