Skip to content

Commit ef5b6cf

Browse files
authored
Merge branch 'agda:master' into decFinSubset
2 parents 2af5d21 + ea2a7ce commit ef5b6cf

File tree

37 files changed

+1760
-185
lines changed

37 files changed

+1760
-185
lines changed

CHANGELOG.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,109 @@ Highlights
99
Bug-fixes
1010
---------
1111

12+
* Fix a type error in `README.Data.Fin.Relation.Unary.Top` within the definition of `>-weakInduction`.
13+
1214
Non-backwards compatible changes
1315
--------------------------------
1416

1517
Minor improvements
1618
------------------
1719

20+
* The type of `Relation.Nullary.Negation.Core.contradiction-irr` has been further
21+
weakened so that the negated hypothesis `¬ A` is marked as irrelevant. This is
22+
safe to do, in view of `Relation.Nullary.Recomputable.Properties.¬-recompute`.
23+
Furthermore, because the *eager* insertion of implicit arguments during type
24+
inference interacts badly with `contradiction`, we introduce an explicit name
25+
`contradiction′` for its `flip`ped version.
26+
27+
* Refactored usages of `+-∸-assoc 1` to `∸-suc` in:
28+
```agda
29+
README.Data.Fin.Relation.Unary.Top
30+
Algebra.Properties.Semiring.Binomial
31+
Data.Fin.Subset.Properties
32+
Data.Nat.Binary.Subtraction
33+
Data.Nat.Combinatorics
34+
```
35+
1836
Deprecated modules
1937
------------------
2038

2139
Deprecated names
2240
----------------
2341

42+
* In `Algebra.Properties.CommutativeSemigroup`:
43+
```agda
44+
interchange ↦ medial
45+
```
46+
2447
New modules
2548
-----------
2649

50+
* `Data.List.Relation.Binary.Permutation.Algorithmic{.Properties}` for the Choudhury and Fiore definition of permutation, and its equivalence with `Declarative` below.
51+
52+
* `Data.List.Relation.Binary.Permutation.Declarative{.Properties}` for the least congruence on `List` making `_++_` commutative, and its equivalence with the `Setoid` definition.
53+
2754
Additions to existing modules
2855
-----------------------------
56+
57+
* In `Algebra.Properties.RingWithoutOne`:
58+
```agda
59+
[-x][-y]≈xy : ∀ x y → - x * - y ≈ x * y
60+
```
61+
62+
* In `Data.Fin.Permutation.Components`:
63+
```agda
64+
transpose[i,i,j]≡j : (i j : Fin n) → transpose i i j ≡ j
65+
transpose[i,j,j]≡i : (i j : Fin n) → transpose i j j ≡ i
66+
transpose[i,j,i]≡j : (i j : Fin n) → transpose i j i ≡ j
67+
transpose-transpose : transpose i j k ≡ l → transpose j i l ≡ k
68+
```
69+
70+
* In `Data.Fin.Properties`:
71+
```agda
72+
≡-irrelevant : Irrelevant {A = Fin n} _≡_
73+
≟-≡ : (eq : i ≡ j) → (i ≟ j) ≡ yes eq
74+
≟-≡-refl : (i : Fin n) → (i ≟ i) ≡ yes refl
75+
≟-≢ : (i≢j : i ≢ j) → (i ≟ j) ≡ no i≢j
76+
```
77+
78+
* In `Data.Nat.ListAction.Properties`
79+
```agda
80+
*-distribˡ-sum : ∀ m ns → m * sum ns ≡ sum (map (m *_) ns)
81+
*-distribʳ-sum : ∀ m ns → sum ns * m ≡ sum (map (_* m) ns)
82+
^-distribʳ-product : ∀ m ns → product ns ^ m ≡ product (map (_^ m) ns)
83+
```
84+
85+
* In `Data.Nat.Properties`:
86+
```agda
87+
≟-≢ : (m≢n : m ≢ n) → (m ≟ n) ≡ no m≢n
88+
∸-suc : m ≤ n → suc n ∸ m ≡ suc (n ∸ m)
89+
^-distribʳ-* : ∀ m n o → (n * o) ^ m ≡ n ^ m * o ^ m
90+
```
91+
92+
* In `Data.Vec.Properties`:
93+
```agda
94+
padRight-lookup : (m≤n : m ≤ n) (a : A) (xs : Vec A m) (i : Fin m) → lookup (padRight m≤n a xs) (inject≤ i m≤n) ≡ lookup xs i
95+
96+
padRight-map : (f : A → B) (m≤n : m ≤ n) (a : A) (xs : Vec A m) → map f (padRight m≤n a xs) ≡ padRight m≤n (f a) (map f xs)
97+
98+
padRight-zipWith : (f : A → B → C) (m≤n : m ≤ n) (a : A) (b : B) (xs : Vec A m) (ys : Vec B m) →
99+
zipWith f (padRight m≤n a xs) (padRight m≤n b ys) ≡ padRight m≤n (f a b) (zipWith f xs ys)
100+
101+
padRight-zipWith₁ : (f : A → B → C) (o≤m : o ≤ m) (m≤n : m ≤ n) (a : A) (b : B) (xs : Vec A m) (ys : Vec B o) →
102+
zipWith f (padRight m≤n a xs) (padRight (≤-trans o≤m m≤n) b ys) ≡
103+
padRight m≤n (f a b) (zipWith f xs (padRight o≤m b ys))
104+
105+
padRight-take : (m≤n : m ≤ n) (a : A) (xs : Vec A m) .(n≡m+o : n ≡ m + o) → take m (cast n≡m+o (padRight m≤n a xs)) ≡ xs
106+
107+
padRight-drop : (m≤n : m ≤ n) (a : A) (xs : Vec A m) .(n≡m+o : n ≡ m + o) → drop m (cast n≡m+o (padRight m≤n a xs)) ≡ replicate o a
108+
109+
padRight-updateAt : (m≤n : m ≤ n) (x : A) (xs : Vec A m) (f : A → A) (i : Fin m) →
110+
updateAt (padRight m≤n x xs) (inject≤ i m≤n) f ≡ padRight m≤n x (updateAt xs i f)
111+
```
112+
113+
* In `Relation.Nullary.Negation.Core`
114+
```agda
115+
¬¬-η : A → ¬ ¬ A
116+
contradiction′ : ¬ A → A → Whatever
117+
```

0 commit comments

Comments
 (0)