Skip to content

Commit 3af63d7

Browse files
committed
fixes agda#1363
1 parent ad0fb0e commit 3af63d7

File tree

3 files changed

+34
-1
lines changed

3 files changed

+34
-1
lines changed

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,11 @@ New modules
116116
Algebra.Construct.Pointwise
117117
```
118118

119+
* `Number` literals derivable from any `SuccessorSet`:
120+
```
121+
Algebra.Literals
122+
```
123+
119124
* Raw bundles for module-like algebraic structures:
120125
```
121126
Algebra.Module.Bundles.Raw

src/Algebra/Bundles.agda

-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ record SuccessorSet c ℓ : Set (suc (c ⊔ ℓ)) where
4444
rawSuccessorSet : RawSuccessorSet _ _
4545
rawSuccessorSet = record { _≈_ = _≈_; suc# = suc#; zero# = zero# }
4646

47-
open RawSuccessorSet rawSuccessorSet public
4847

4948
------------------------------------------------------------------------
5049
-- Bundles with 1 binary operation

src/Algebra/Literals.agda

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
------------------------------------------------------------------------
2+
-- The Agda standard library
3+
--
4+
-- Algebra Literals, from a SuccessorSet
5+
------------------------------------------------------------------------
6+
7+
{-# OPTIONS --cubical-compatible --safe #-}
8+
9+
open import Algebra.Bundles using (SuccessorSet)
10+
11+
module Algebra.Literals {c ℓ} (successorSet : SuccessorSet c ℓ) where
12+
13+
open import Agda.Builtin.FromNat using (Number)
14+
open import Data.Nat.Base as ℕ using (ℕ; zero; suc)
15+
open import Data.Unit.Polymorphic.Base
16+
17+
open SuccessorSet successorSet
18+
19+
20+
------------------------------------------------------------------------
21+
-- Number instance
22+
23+
fromℕ : (n : ℕ) Carrier
24+
fromℕ zero = zero#
25+
fromℕ (suc n) = suc# (fromℕ n)
26+
27+
instance
28+
number : Number Carrier
29+
number = record { Constraint = λ _ ⊤ ; fromNat = λ n fromℕ n }

0 commit comments

Comments
 (0)