@@ -61,8 +61,8 @@ that can be used to prove simple properties of Idris programs.
61
61
62
62
One unusual aspect of Coq is that its set of built-in features is _extremely_
63
63
small, For example , instead of providing the usual palette of atomic data types
64
- (booleans, integers, strings, etc.), Coq offers a powerful mechanism for
65
- defining new data types from scratch , from which all these familiar types arise
64
+ (booleans, integers, strings, etc.), Coq offers a powerful mechanism for
65
+ defining new data types from scratch , from which all these familiar types arise
66
66
as instances .
67
67
68
68
Naturally, the Coq distribution comes with an extensive standard library
@@ -229,7 +229,7 @@ members `False` and `True`.
229
229
data Bool = True | False
230
230
```
231
231
232
- This definition is written in the simplified style , similar to `Day`. It can
232
+ This definition is written in the simplified style , similar to `Day`. It can
233
233
also be written in the verbose style:
234
234
235
235
```idris
@@ -238,7 +238,7 @@ data Bool : Type where
238
238
False : Bool
239
239
```
240
240
241
- The verbose style is more powerful because it allows us to assign precise
241
+ The verbose style is more powerful because it allows us to assign precise
242
242
types to individual constructors . This will become very useful later on.
243
243
244
244
Although we are rolling our own booleans here for the sake of building up
@@ -282,7 +282,7 @@ truth table -- for the `orb` function:
282
282
-- TODO: Edit this
283
283
284
284
We can also introduce some familiar syntax for the boolean operations we have
285
- just defined . The `syntax` command defines a new symbolic notation for an
285
+ just defined . The `syntax` command defines a new symbolic notation for an
286
286
existing definition , and `infixl` specifies left -associative fixity .
287
287
\color{black}
288
288
@@ -301,9 +301,9 @@ existing definition, and `infixl` specifies left-associative fixity.
301
301
302
302
=== Exercises: 1 star (nandb)
303
303
304
- Fill in the hole `?nandb_rhs` and complete the following function; then make
305
- sure that the assertions below can each be verified by Idris. (Fill in each of
306
- the holes , following the model of the `orb` tests above .) The function should
304
+ Fill in the hole `?nandb_rhs` and complete the following function; then make
305
+ sure that the assertions below can each be verified by Idris. (Fill in each of
306
+ the holes , following the model of the `orb` tests above .) The function should
307
307
return `True` if either or both of its inputs are `False`.
308
308
309
309
> nandb : (b1 : Bool) -> (b2 : Bool) -> Bool
@@ -395,8 +395,8 @@ Idris provides a _module system_, to aid in organizing large developments.
395
395
> namespace Numbers
396
396
397
397
The types we have defined so far are examples of "enumerated types ": their
398
- definitions explicitly enumerate a finite set of elements . A More interesting
399
- way of defining a type is to give a collection of _inductive rules_ describing
398
+ definitions explicitly enumerate a finite set of elements . A More interesting
399
+ way of defining a type is to give a collection of _inductive rules_ describing
400
400
its elements . For example , we can define the natural numbers as follows :
401
401
402
402
```idris
0 commit comments