- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
(** Set of all possible interleaving of two traces is a trace
ensemble. As we later prove in [interleaving_to_permutation], this
definition is dual to [Permutation]. *)
Inductive Interleaving : list TE -> list TE -> TraceEnsemble :=
| ilv_cons_l : forall te t1 t2 t,
Interleaving t1 t2 t ->
Interleaving (te :: t1) t2 (te :: t)
| ilv_cons_r : forall te t1 t2 t,
Interleaving t1 t2 t ->
Interleaving t1 (te :: t2) (te :: t)
| ilv_nil : Interleaving [] [] [].
Попытка оптимизации:
(* Left-biased version of [Interleaving] that doesn't make
distinction between schedulings of commuting elements: *)
Inductive UniqueInterleaving : list TE -> list TE -> TraceEnsemble :=
| uilv_cons_l : forall l t1 t2 t,
UniqueInterleaving t1 t2 t ->
UniqueInterleaving (l :: t1) t2 (l :: t)
| uilv_cons_r1 : forall l r t1 t2 t,
~trace_elems_commute l r ->
UniqueInterleaving (l :: t1) t2 (l :: t) ->
UniqueInterleaving (l :: t1) (r :: t2) (r :: l :: t)
| uilv_cons_r2 : forall r1 r2 t1 t2 t,
UniqueInterleaving t1 (r1 :: t2) (r1 :: t) ->
UniqueInterleaving t1 (r2 :: r1 :: t2) (r2 :: r1 :: t)
| uilv_nil : forall t, UniqueInterleaving [] t t.
Сложный говнокод. Почему вторая "оптимизированная" версия работает хуже первой?
CHayT 01.11.2021 01:46 # +1
CHayT 01.11.2021 02:26 # +1
guest6 01.11.2021 02:32 # +1
CHayT 01.11.2021 13:57 # 0
CHayT 01.11.2021 01:49 # +1
j123123 01.11.2021 06:03 # +2
Вот допустим у меня есть такая хрень
И допустим в эту хуйню передается два нуля как аргумент. Что она вернет? По первому совпадению, т.е. 0? Или это вообще не "скомпилируется"?
CHayT 01.11.2021 11:37 # +1
nemyx 17.03.2024 22:15 # 0
guest6 17.03.2024 22:23 # 0
Это знечит, что опотный программист может написать такой паттерн-матчинг, который за экспоненциальное время будет работать, и повесит тебе машину нахуй
guest6 17.03.2024 22:24 # 0
digitalEugene 01.11.2021 08:55 # −1
CHayT 01.11.2021 12:05 # 0
digitalEugene 01.11.2021 15:49 # 0
bormand 01.11.2021 16:21 # 0
Desktop 01.11.2021 16:33 # 0
MaaKut 01.11.2021 19:42 # 0
Soul_re@ver 01.11.2021 20:02 # 0
MaaKut 01.11.2021 22:13 # 0
Подарил бы кто. Например, ты.
guest6 17.03.2024 22:24 # 0
так вижу
https://youtu.be/rX8j3TAG1qY?t=66
Desktop 17.03.2024 22:29 # 0
CHayT 01.11.2021 16:41 # +1
CHayT 09.11.2021 21:11 # 0
CHayT 09.11.2021 21:12 # 0
sauto, sauto, sauto, sauto! firstorder. sauto!
CHayT 09.11.2021 21:17 # 0
bormand 09.11.2021 23:53 # 0
Сразу видно ма-те-ма-ти-чес-кую школу.
CHayT 10.11.2021 00:10 # 0