This is an internal implementation file of the hash map. Users of the hash map should not rely on the contents of this file.
File contents: Verification of associative lists
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getEntry? a [] = none
- Std.DHashMap.Internal.List.getEntry? a (⟨k, v⟩ :: l) = bif k == a then some ⟨k, v⟩ else Std.DHashMap.Internal.List.getEntry? a l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getValue? a [] = none
- Std.DHashMap.Internal.List.getValue? a (⟨k, v⟩ :: l) = bif k == a then some v else Std.DHashMap.Internal.List.getValue? a l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getValueCast? a [] = none
- Std.DHashMap.Internal.List.getValueCast? a (⟨k, v⟩ :: l) = if h : (k == a) = true then some (cast ⋯ v) else Std.DHashMap.Internal.List.getValueCast? a l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.containsKey a [] = false
- Std.DHashMap.Internal.List.containsKey a (⟨k, v⟩ :: l) = (k == a || Std.DHashMap.Internal.List.containsKey a l)
Instances For
Internal implementation detail of the hash map
Equations
Instances For
Internal implementation detail of the hash map
Equations
Instances For
Internal implementation detail of the hash map
Equations
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getValueCastD a l fallback = (Std.DHashMap.Internal.List.getValueCast? a l).getD fallback
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getValueD a l fallback = (Std.DHashMap.Internal.List.getValue? a l).getD fallback
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getKey? a [] = none
- Std.DHashMap.Internal.List.getKey? a (⟨k, v⟩ :: l) = bif k == a then some k else Std.DHashMap.Internal.List.getKey? a l
Instances For
Internal implementation detail of the hash map
Equations
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.getKeyD a l fallback = (Std.DHashMap.Internal.List.getKey? a l).getD fallback
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.replaceEntry k v [] = []
- Std.DHashMap.Internal.List.replaceEntry k v (⟨k_1, v_1⟩ :: l) = bif k_1 == k then ⟨k, v⟩ :: l else ⟨k_1, v_1⟩ :: Std.DHashMap.Internal.List.replaceEntry k v l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.eraseKey k [] = []
- Std.DHashMap.Internal.List.eraseKey k (⟨k_1, v⟩ :: l) = bif k_1 == k then l else ⟨k_1, v⟩ :: Std.DHashMap.Internal.List.eraseKey k l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.insertEntry k v l = bif Std.DHashMap.Internal.List.containsKey k l then Std.DHashMap.Internal.List.replaceEntry k v l else ⟨k, v⟩ :: l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.insertEntryIfNew k v l = bif Std.DHashMap.Internal.List.containsKey k l then l else ⟨k, v⟩ :: l
Instances For
This is a restatement of containsKey_insertEntryIfNew
that is written to exactly match the proof
obligation in the statement of getValueCast_insertEntryIfNew
.
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.Prod.toSigma p = ⟨p.fst, p.snd⟩
Instances For
Internal implementation detail of the hash map
Equations
- One or more equations did not get rendered due to their size.
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.modifyKey k f l = match Std.DHashMap.Internal.List.getValueCast? k l with | none => l | some v => Std.DHashMap.Internal.List.replaceEntry k (f v) l
Instances For
Internal implementation detail of the hash map
Equations
- Std.DHashMap.Internal.List.Const.modifyKey k f l = match Std.DHashMap.Internal.List.getValue? k l with | none => l | some v => Std.DHashMap.Internal.List.replaceEntry k (f v) l