|
16 | 16 | * Added dynamic layout [#879](https://github.com/lambdaclass/cairo-rs/pull/879) |
17 | 17 | * `get_segment_size` was exposed [#934](https://github.com/lambdaclass/cairo-rs/pull/934) |
18 | 18 |
|
| 19 | + |
| 20 | +* Add missing hint on cairo_secp lib [#990](https://github.com/lambdaclass/cairo-rs/pull/990): |
| 21 | + |
| 22 | + `BuiltinHintProcessor` now supports the following hint: |
| 23 | + ```python |
| 24 | + from starkware.cairo.common.cairo_secp.secp_utils import pack |
| 25 | + |
| 26 | + slope = pack(ids.slope, PRIME) |
| 27 | + x = pack(ids.point.x, PRIME) |
| 28 | + y = pack(ids.point.y, PRIME) |
| 29 | + |
| 30 | + value = new_x = (pow(slope, 2, SECP_P) - 2 * x) % SECP_P |
| 31 | + ``` |
| 32 | + |
| 33 | +* Add missing hint on cairo_secp lib [#989](https://github.com/lambdaclass/cairo-rs/pull/989): |
| 34 | + |
| 35 | + `BuiltinHintProcessor` now supports the following hint: |
| 36 | + ```python |
| 37 | + from starkware.cairo.common.cairo_secp.secp_utils import SECP_P |
| 38 | + q, r = divmod(pack(ids.val, PRIME), SECP_P) |
| 39 | + assert r == 0, f"verify_zero: Invalid input {ids.val.d0, ids.val.d1, ids.val.d2}." |
| 40 | + ids.q = q % PRIME |
| 41 | + ``` |
| 42 | + |
| 43 | +* Add missing hint on cairo_secp lib [#986](https://github.com/lambdaclass/cairo-rs/pull/986): |
| 44 | + |
| 45 | + `BuiltinHintProcessor` now supports the following hint: |
| 46 | + ```python |
| 47 | + from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
| 48 | + from starkware.python.math_utils import div_mod |
| 49 | + |
| 50 | + # Compute the slope. |
| 51 | + x = pack(ids.pt.x, PRIME) |
| 52 | + y = pack(ids.pt.y, PRIME) |
| 53 | + value = slope = div_mod(3 * x ** 2, 2 * y, SECP_P) |
| 54 | + ``` |
| 55 | + |
| 56 | +* Add missing hint on cairo_secp lib [#984](https://github.com/lambdaclass/cairo-rs/pull/984): |
| 57 | + |
| 58 | + `BuiltinHintProcessor` now supports the following hint: |
| 59 | + ```python |
| 60 | + from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
| 61 | + from starkware.python.math_utils import div_mod |
| 62 | + |
| 63 | + # Compute the slope. |
| 64 | + x0 = pack(ids.pt0.x, PRIME) |
| 65 | + y0 = pack(ids.pt0.y, PRIME) |
| 66 | + x1 = pack(ids.pt1.x, PRIME) |
| 67 | + y1 = pack(ids.pt1.y, PRIME) |
| 68 | + value = slope = div_mod(y0 - y1, x0 - x1, SECP_P) |
| 69 | + ``` |
| 70 | + |
19 | 71 | #### [0.3.0-rc1] - 2023-04-13 |
20 | 72 | * Derive Deserialize for ExecutionResources [#922](https://github.com/lambdaclass/cairo-rs/pull/922) |
21 | 73 | * Remove builtin names from VirtualMachine.builtin_runners [#921](https://github.com/lambdaclass/cairo-rs/pull/921) |
|
61 | 113 | * after each step |
62 | 114 | * ExecutionResource operations: add and substract [#774](https://github.com/lambdaclass/cairo-rs/pull/774), multiplication [#908](https://github.com/lambdaclass/cairo-rs/pull/908) , and `AddAssign` [#914](https://github.com/lambdaclass/cairo-rs/pull/914) |
63 | 115 |
|
64 | | - |
65 | | -* Add missing hint on cairo_secp lib [#984]: |
66 | | - |
67 | | - `BuiltinHintProcessor` now supports the following hint: |
68 | | - ```python |
69 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
70 | | - from starkware.python.math_utils import div_mod |
71 | | - |
72 | | - # Compute the slope. |
73 | | - x0 = pack(ids.pt0.x, PRIME) |
74 | | - y0 = pack(ids.pt0.y, PRIME) |
75 | | - x1 = pack(ids.pt1.x, PRIME) |
76 | | - y1 = pack(ids.pt1.y, PRIME) |
77 | | - value = slope = div_mod(y0 - y1, x0 - x1, SECP_P) |
78 | | - ``` |
79 | | - |
80 | 116 | * Implement hints on uint384 lib (Part 2) [#971](https://github.com/lambdaclass/cairo-rs/pull/971) |
81 | 117 |
|
82 | 118 | `BuiltinHintProcessor` now supports the following hint: |
|
228 | 264 |
|
229 | 265 | Used by the common library function `uint256_mul_div_mod` |
230 | 266 |
|
231 | | -* Add missing hint on cairo_secp lib [#986]: |
232 | | - |
233 | | - `BuiltinHintProcessor` now supports the following hint: |
234 | | - ```python |
235 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
236 | | - from starkware.python.math_utils import div_mod |
237 | | - |
238 | | - # Compute the slope. |
239 | | - x = pack(ids.pt.x, PRIME) |
240 | | - y = pack(ids.pt.y, PRIME) |
241 | | - value = slope = div_mod(3 * x ** 2, 2 * y, SECP_P) |
242 | | - ``` |
243 | | - |
244 | | -* Add missing hint on cairo_secp lib [#984]: |
245 | | - `BuiltinHintProcessor` now supports the following hint: |
246 | | - ```python |
247 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
248 | | - from starkware.python.math_utils import div_mod |
249 | | - |
250 | | - # Compute the slope. |
251 | | - x0 = pack(ids.pt0.x, PRIME) |
252 | | - y0 = pack(ids.pt0.y, PRIME) |
253 | | - x1 = pack(ids.pt1.x, PRIME) |
254 | | - y1 = pack(ids.pt1.y, PRIME) |
255 | | - value = slope = div_mod(y0 - y1, x0 - x1, SECP_P) |
256 | | - ``` |
257 | | - |
258 | | -* Add missing hint on cairo_secp lib [#989]: |
259 | | - |
260 | | - `BuiltinHintProcessor` now supports the following hint: |
261 | | - ```python |
262 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P |
263 | | - q, r = divmod(pack(ids.val, PRIME), SECP_P) |
264 | | - assert r == 0, f"verify_zero: Invalid input {ids.val.d0, ids.val.d1, ids.val.d2}." |
265 | | - ids.q = q % PRIME |
266 | | - ``` |
267 | | - |
268 | | -* Add missing hint on cairo_secp lib [#986]: |
269 | | - `BuiltinHintProcessor` now supports the following hint: |
270 | | - ```python |
271 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
272 | | - from starkware.python.math_utils import div_mod |
273 | | - |
274 | | - # Compute the slope. |
275 | | - x = pack(ids.pt.x, PRIME) |
276 | | - y = pack(ids.pt.y, PRIME) |
277 | | - value = slope = div_mod(3 * x ** 2, 2 * y, SECP_P) |
278 | | - ``` |
279 | | - |
280 | | -* Add missing hint on cairo_secp lib [#984]: |
281 | | - `BuiltinHintProcessor` now supports the following hint: |
282 | | - ```python |
283 | | - from starkware.cairo.common.cairo_secp.secp_utils import SECP_P, pack |
284 | | - from starkware.python.math_utils import div_mod |
285 | | - |
286 | | - # Compute the slope. |
287 | | - x0 = pack(ids.pt0.x, PRIME) |
288 | | - y0 = pack(ids.pt0.y, PRIME) |
289 | | - x1 = pack(ids.pt1.x, PRIME) |
290 | | - y1 = pack(ids.pt1.y, PRIME) |
291 | | - value = slope = div_mod(y0 - y1, x0 - x1, SECP_P) |
292 | | - ``` |
293 | | - |
294 | 267 | * Move `Memory` into `MemorySegmentManager` [#830](https://github.com/lambdaclass/cairo-rs/pull/830) |
295 | 268 | * Structural changes: |
296 | 269 | * Remove `memory: Memory` field from `VirtualMachine` |
|
0 commit comments