]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
2 years agoMerge pull request #2354 from triska/side_channel
Mark Thom [Fri, 1 Mar 2024 23:11:22 +0000 (16:11 -0700)]
Merge pull request #2354 from triska/side_channel

explain potential side-channel attacks due to compact string representation

2 years agoexplain potential side-channel attacks due to compact string representation
Markus Triska [Sun, 25 Feb 2024 10:13:38 +0000 (11:13 +0100)]
explain potential side-channel attacks due to compact string representation

This legitimate concern was already raised by @infogulch in:

https://github.com/mthom/scryer-prolog/issues/1309#issuecomment-1080028854

Thank you a lot!

2 years agoMerge pull request #2353 from triska/hmac_verification
Mark Thom [Fri, 1 Mar 2024 19:09:16 +0000 (12:09 -0700)]
Merge pull request #2353 from triska/hmac_verification

ENHANCED: Safe HMAC verification, using constant time string comparison.

2 years agoENHANCED: Safe HMAC verification, using constant time string comparison.
Markus Triska [Sat, 24 Feb 2024 07:18:38 +0000 (08:18 +0100)]
ENHANCED: Safe HMAC verification, using constant time string comparison.

Without this provision, the expected HMAC can be gathered from timing
differences depending on the position where the strings first diverge,
and hence an attacker can forge an authenticated message by supplying
the gathered HMAC.

Test case, using exp(E) to succeed exactly 2^E times:

    exp(E) :-
        N is 2^E,
        between(1, N, _).

yielding:

    ?- Options = [algorithm(sha512),hmac([1,2,3])],
       Ds = "test",
       crypto_data_hash(Ds, H, Options),
       phrase((seq(As),seq(Bs)), H),
       same_length(Bs, Cs),
       maplist(=(a), Cs),
       append(As, Cs, H1),
       time((exp(10),crypto_data_hash(Ds, H1, Options),false)).
    %@    % CPU time: 0.710s, 7_942_187 inferences
    %@    % CPU time: 0.713s, 7_942_187 inferences
    %@    % CPU time: 0.712s, 7_942_187 inferences
    %@    % CPU time: 0.711s, 7_942_187 inferences
    %@    % CPU time: 0.710s, 7_942_187 inferences
    %@    % CPU time: 0.711s, 7_942_187 inferences
    %@    % CPU time: 0.710s, 7_942_187 inferences

    ?- length(_, L), time((exp(10),crypto_data_hash("test", "3caebd1a0a2647930319a660b7d3642eb380fbd43202f9f6d08aabaa9ba50c39522a12ead10f0423f0af613cbc6fea74ad682ee11f563cc2e735722004fda2ba", [algorithm(sha512),hmac([0,L])]),false)).
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.734s, 7_878_699 inferences
    %@    % CPU time: 0.732s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.515s, 5_525_404 inferences
    %@    error('$interrupt_thrown',repl/0).

2 years agoMerge pull request #2351 from infogulch/install-current-iai
Mark Thom [Fri, 1 Mar 2024 00:09:47 +0000 (17:09 -0700)]
Merge pull request #2351 from infogulch/install-current-iai

Install version of iai-callgrind set in Cargo.toml

2 years agoInstall version of iai-callgrind set in Cargo.toml
infogulch [Thu, 29 Feb 2024 23:20:01 +0000 (17:20 -0600)]
Install version of iai-callgrind set in Cargo.toml

2 years agomake indexer downcast Integers to Fixnums when possible, be slightly more judicious...
Mark [Thu, 29 Feb 2024 23:15:28 +0000 (16:15 -0700)]
make indexer downcast Integers to Fixnums when possible, be slightly more judicious about allocating Integers instead of Fixnums (#2340)

2 years agoadd #2341 test to lib_machine.rs
Mark [Thu, 29 Feb 2024 22:12:58 +0000 (15:12 -0700)]
add #2341 test to lib_machine.rs

2 years agouse scryer-modular-bitfield on github, version bump v0.9.4
Mark [Thu, 29 Feb 2024 17:08:08 +0000 (10:08 -0700)]
use scryer-modular-bitfield on github, version bump

2 years agofix misuse of TypeError trait while fixing #2345
Mark [Thu, 29 Feb 2024 03:47:36 +0000 (20:47 -0700)]
fix misuse of TypeError trait while fixing #2345

2 years agoissue callable type error from dynamic_module_resolution if module is not an atom...
Mark [Thu, 29 Feb 2024 03:35:38 +0000 (20:35 -0700)]
issue callable type error from dynamic_module_resolution if module is not an atom (#2345)

2 years agoMerge pull request #2309 from coasys/library-use-case
Mark Thom [Wed, 28 Feb 2024 21:34:54 +0000 (14:34 -0700)]
Merge pull request #2309 from coasys/library-use-case

Iron-out edge cases for library use-case, adding extensive real-world test assertions

2 years agoMerge pull request #2342 from triska/curve_doc
Mark Thom [Sat, 24 Feb 2024 21:53:18 +0000 (14:53 -0700)]
Merge pull request #2342 from triska/curve_doc

DOC: Add DocLog comments for reasoning about elliptic curves.

2 years agoDOC: Add DocLog comments for reasoning about elliptic curves.
Markus Triska [Sat, 24 Feb 2024 19:30:48 +0000 (20:30 +0100)]
DOC: Add DocLog comments for reasoning about elliptic curves.

2 years agoMerge pull request #2338 from triska/hmac
Mark Thom [Thu, 22 Feb 2024 21:48:12 +0000 (14:48 -0700)]
Merge pull request #2338 from triska/hmac

ADDED: Hash-based message authentication code (HMAC), using hmac(Key).

2 years agoADDED: Hash-based message authentication code (HMAC), using hmac(Key).
Markus Triska [Thu, 22 Feb 2024 19:17:20 +0000 (20:17 +0100)]
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).

2 years agoMerge pull request #2337 from triska/master
Mark Thom [Sun, 18 Feb 2024 17:05:09 +0000 (10:05 -0700)]
Merge pull request #2337 from triska/master

link to newly available paper on analysis of dose-escalation protocols

2 years agolink to newly available paper on analysis of dose-escalation protocols
Markus Triska [Sun, 18 Feb 2024 08:18:41 +0000 (09:18 +0100)]
link to newly available paper on analysis of dose-escalation protocols

Many thanks to @dcnorris for this great application and cooperation!

2 years agofix build of run_iai bench for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 23:15:03 +0000 (00:15 +0100)]
fix build of run_iai bench for wasm32

2 years agofix benchmarks being broken for every target except wam32
Bennet Bleßmann [Fri, 16 Feb 2024 23:01:10 +0000 (00:01 +0100)]
fix benchmarks being broken for every target except wam32

2 years agocfg out benches for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 22:43:22 +0000 (23:43 +0100)]
cfg out benches for wasm32

2 years agofix compilation of wasm32 test and skip to run wasm32 tests
Bennet Bleßmann [Fri, 16 Feb 2024 22:18:21 +0000 (23:18 +0100)]
fix compilation of wasm32 test  and skip to run wasm32 tests

2 years agoundo `continue-on-error`
Bennet Bleßmann [Fri, 16 Feb 2024 21:23:22 +0000 (22:23 +0100)]
undo `continue-on-error`

- currently  `continue-on-error` is not shown in a usefull way on failiure see <https://github.com/orgs/community/discussions/15452>

2 years agobump ahash lock to 0.8.7
Bennet Bleßmann [Fri, 16 Feb 2024 21:15:32 +0000 (22:15 +0100)]
bump ahash lock to 0.8.7

- fix nightly build
- not bumping to latest aka. 0.8.8 as that has a msrv of 1.72.0 and we are only at 1.70.0

2 years agoMerge pull request #2327 from triska/char_type
Mark Thom [Mon, 12 Feb 2024 00:33:07 +0000 (17:33 -0700)]
Merge pull request #2327 from triska/char_type

FIXED: char_type/2 for unbound first argument.

2 years agoFIXED: char_type/2 for unbound first argument.
Markus Triska [Sun, 11 Feb 2024 21:19:19 +0000 (22:19 +0100)]
FIXED: char_type/2 for unbound first argument.

Surrogate pairs form a gap in valid character codes, see:

    https://github.com/mthom/scryer-prolog/issues/2326#issuecomment-1937864665

Many thanks to @Skgland for the pointer, and to @librarianmage for the
question that spawned this!

This addresses #2326.

2 years agocontinue-on-error if target=wasm32 or rust=nightly
Nicolas Luck [Fri, 9 Feb 2024 12:48:45 +0000 (13:48 +0100)]
continue-on-error if target=wasm32 or rust=nightly

2 years agoReactivate nightly test job with continue-on-error set
Nicolas Luck [Fri, 9 Feb 2024 12:44:37 +0000 (13:44 +0100)]
Reactivate nightly test job with continue-on-error set

2 years agoUse stable Rust for style/report and deactivate nightly x86_64 target in CI
Nicolas Luck [Fri, 9 Feb 2024 12:14:06 +0000 (13:14 +0100)]
Use stable Rust for style/report and deactivate nightly x86_64 target in CI

2 years agoMerge branch 'master' into library-use-case
Nicolas Luck [Fri, 9 Feb 2024 11:41:01 +0000 (12:41 +0100)]
Merge branch 'master' into library-use-case

2 years agoUpdate src/machine/parsed_results.rs
Mark Thom [Fri, 9 Feb 2024 00:38:01 +0000 (17:38 -0700)]
Update src/machine/parsed_results.rs

Co-authored-by: Bennet Bleßmann <[email protected]>
2 years agofix tests broken by singleton
Mark [Thu, 8 Feb 2024 04:46:32 +0000 (21:46 -0700)]
fix tests broken by singleton

2 years agoMerge pull request #2322 from triska/char_code
Mark Thom [Thu, 8 Feb 2024 01:49:13 +0000 (18:49 -0700)]
Merge pull request #2322 from triska/char_code

ENHANCED: Bi-directional char_code/2, addressing #2321.

2 years agoENHANCED: Bidirectional char_type/2, addressing #2321.
Markus Triska [Wed, 7 Feb 2024 19:05:07 +0000 (20:05 +0100)]
ENHANCED: Bidirectional char_type/2, addressing #2321.

Suggested by @librarianmage, many thanks!

2 years agoMerge pull request #2319 from triska/clpz_t
Mark Thom [Wed, 7 Feb 2024 01:11:40 +0000 (18:11 -0700)]
Merge pull request #2319 from triska/clpz_t

ADDED: clpz_t/2, generalizing support for use with library(reif)

2 years agoADDED: clpz_t/2, generalizing support for use with library(reif)
Markus Triska [Tue, 6 Feb 2024 18:05:29 +0000 (19:05 +0100)]
ADDED: clpz_t/2, generalizing support for use with library(reif)

This was suggested and contributed by @librarianmage in:

    https://github.com/mthom/scryer-prolog/issues/2225#issuecomment-1890801923

Many thanks!

If anyone can find a better predicate name, please let us know any time!

2 years agofmt
Mark [Thu, 1 Feb 2024 16:31:04 +0000 (09:31 -0700)]
fmt

2 years agoMerge pull request #2317 from aarroyoc/all-modules-test
Mark Thom [Sun, 4 Feb 2024 22:09:13 +0000 (15:09 -0700)]
Merge pull request #2317 from aarroyoc/all-modules-test

Add all_mdoules test and fix library(csv)

2 years agoAdd all_mdoules test and fix library(csv)
Adrián Arroyo Calle [Sun, 4 Feb 2024 20:04:02 +0000 (21:04 +0100)]
Add all_mdoules test and fix library(csv)

2 years agofix reverted tests, ensure files are loaded before goals (#2315)
Mark [Sat, 3 Feb 2024 18:49:26 +0000 (11:49 -0700)]
fix reverted tests, ensure files are loaded before goals (#2315)

2 years agofix broken tests
Mark [Sat, 3 Feb 2024 00:04:47 +0000 (17:04 -0700)]
fix broken tests

2 years agotreat consultation of command line modules as regular goals (#2314)
Mark [Fri, 2 Feb 2024 22:35:00 +0000 (15:35 -0700)]
treat consultation of command line modules as regular goals (#2314)

2 years agofmt
Mark [Fri, 2 Feb 2024 18:49:02 +0000 (11:49 -0700)]
fmt

2 years agoload .scryerrc before files and goals (#1775, #2313)
Mark [Fri, 2 Feb 2024 17:54:28 +0000 (10:54 -0700)]
load .scryerrc before files and goals (#1775, #2313)

2 years agorecord stub choice point as block
Mark [Thu, 1 Feb 2024 16:26:58 +0000 (09:26 -0700)]
record stub choice point as block

2 years agoTest show problem with nonexistent predicate
Nicolas Luck [Thu, 1 Feb 2024 13:14:50 +0000 (14:14 +0100)]
Test show problem with nonexistent predicate

2 years agofmt
Nicolas Luck [Thu, 1 Feb 2024 12:53:21 +0000 (13:53 +0100)]
fmt

2 years agoclippy
Nicolas Luck [Thu, 1 Feb 2024 12:51:37 +0000 (13:51 +0100)]
clippy

2 years agoFix all orderings in integration assertions
Nicolas Luck [Thu, 1 Feb 2024 12:43:51 +0000 (13:43 +0100)]
Fix all orderings in integration assertions

2 years agoRemove test with long program literals, not needed
Nicolas Luck [Thu, 1 Feb 2024 12:00:49 +0000 (13:00 +0100)]
Remove test with long program literals, not needed

2 years agoMore ordering adjustments
Nicolas Luck [Thu, 1 Feb 2024 11:59:10 +0000 (12:59 +0100)]
More ordering adjustments

2 years agofix style errors
Mark [Thu, 1 Feb 2024 00:32:32 +0000 (17:32 -0700)]
fix style errors

2 years agoindex stub choice point correctly
Mark [Thu, 1 Feb 2024 00:30:13 +0000 (17:30 -0700)]
index stub choice point correctly

2 years agoExtract failing assertion as single test case
Nicolas Luck [Wed, 31 Jan 2024 14:03:28 +0000 (15:03 +0100)]
Extract failing assertion as single test case

2 years agoAdjust some first result orderings in integration assertions
Nicolas Luck [Tue, 30 Jan 2024 11:54:12 +0000 (12:54 +0100)]
Adjust some first result orderings in integration assertions

2 years agocheck for True or False Query Resolution unconditionally
Mark [Mon, 29 Jan 2024 22:06:56 +0000 (15:06 -0700)]
check for True or False Query Resolution unconditionally

2 years agofmt
Nicolas Luck [Mon, 29 Jan 2024 17:44:20 +0000 (18:44 +0100)]
fmt

2 years agoAdd more test cases to differentiate usage of discontiguous
Nicolas Luck [Mon, 29 Jan 2024 15:49:03 +0000 (16:49 +0100)]
Add more test cases to differentiate usage of discontiguous

2 years agoMinimal reproduction of faulty behaviour seen in integration tests
Nicolas Luck [Mon, 29 Jan 2024 14:26:06 +0000 (15:26 +0100)]
Minimal reproduction of faulty behaviour seen in integration tests

2 years agoMerge branch 'master' into library-use-case
Nicolas Luck [Fri, 26 Jan 2024 16:21:47 +0000 (17:21 +0100)]
Merge branch 'master' into library-use-case

2 years agoAdd expected results to integration test
Nicolas Luck [Fri, 26 Jan 2024 16:18:57 +0000 (17:18 +0100)]
Add expected results to integration test

Results are logs of what we get with old toplevel-based version of lib_machine. These are also congruent with what our tests logged out based on SWI.

2 years agoscan registers of instructions leading to verify_attributes interrupt to find the...
Mark [Fri, 26 Jan 2024 06:59:54 +0000 (23:59 -0700)]
scan registers of instructions leading to verify_attributes interrupt to find the number of registers to save (#2307)

2 years agoadd non chunk traversing cut family instructions to is_head_instr (#2307)
Mark [Fri, 26 Jan 2024 06:25:06 +0000 (23:25 -0700)]
add non chunk traversing cut family instructions to is_head_instr (#2307)

2 years agoMerge pull request #2308 from triska/small_format_improvements
Mark Thom [Thu, 25 Jan 2024 21:17:18 +0000 (14:17 -0700)]
Merge pull request #2308 from triska/small_format_improvements

Small format improvements

2 years agoupdate answers using latest toplevel output
Markus Triska [Thu, 25 Jan 2024 20:33:27 +0000 (21:33 +0100)]
update answers using latest toplevel output

2 years agorely on recently improved argument indexing for determinism
Markus Triska [Thu, 25 Jan 2024 20:31:08 +0000 (21:31 +0100)]
rely on recently improved argument indexing for determinism

This is possible as of 4fd37335f576240c25dfbfe6e70441aff166c60e.

2 years agomove call_residue_vars/2 from atts.pl to iso_ext.pl
Mark [Thu, 25 Jan 2024 19:37:46 +0000 (12:37 -0700)]
move call_residue_vars/2 from atts.pl to iso_ext.pl

2 years agodon't mark temp variables as safe through argument_to_value (#2307)
Mark [Thu, 25 Jan 2024 19:34:21 +0000 (12:34 -0700)]
don't mark temp variables as safe through argument_to_value (#2307)

2 years agoMerge pull request #2306 from triska/dcg_representation
Mark Thom [Tue, 23 Jan 2024 22:22:17 +0000 (15:22 -0700)]
Merge pull request #2306 from triska/dcg_representation

No longer use (->)//2 in library(clpb)

2 years agoMerge pull request #2305 from mthom/dependabot/cargo/h2-0.3.24
Mark Thom [Tue, 23 Jan 2024 20:50:17 +0000 (13:50 -0700)]
Merge pull request #2305 from mthom/dependabot/cargo/h2-0.3.24

Bump h2 from 0.3.22 to 0.3.24

2 years agoimprove error context
Markus Triska [Tue, 23 Jan 2024 20:43:34 +0000 (21:43 +0100)]
improve error context

Source: https://github.com/mthom/scryer-prolog/issues/2304#issuecomment-1906434756

2 years agono longer use (->)//2, since it is implementation defined
Markus Triska [Tue, 23 Jan 2024 20:40:50 +0000 (21:40 +0100)]
no longer use (->)//2, since it is implementation defined

This addresses #2304.

2 years agoBump h2 from 0.3.22 to 0.3.24
dependabot[bot] [Tue, 23 Jan 2024 18:20:39 +0000 (18:20 +0000)]
Bump h2 from 0.3.22 to 0.3.24

Bumps [h2](https://github.com/hyperium/h2) from 0.3.22 to 0.3.24.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.22...v0.3.24)

---
updated-dependencies:
- dependency-name: h2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2 years agoMerge pull request #2303 from mthom/dependabot/cargo/shlex-1.3.0
Mark Thom [Tue, 23 Jan 2024 18:19:53 +0000 (11:19 -0700)]
Merge pull request #2303 from mthom/dependabot/cargo/shlex-1.3.0

Bump shlex from 1.2.0 to 1.3.0

2 years agoBump shlex from 1.2.0 to 1.3.0
dependabot[bot] [Mon, 22 Jan 2024 21:53:43 +0000 (21:53 +0000)]
Bump shlex from 1.2.0 to 1.3.0

Bumps [shlex](https://github.com/comex/rust-shlex) from 1.2.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2 years agoMerge pull request #2302 from triska/dcg_representation
Mark Thom [Mon, 22 Jan 2024 07:26:23 +0000 (00:26 -0700)]
Merge pull request #2302 from triska/dcg_representation

Throw representation errors for unsupported DCG grammar control constructs

2 years agouse newly available false//0
Markus Triska [Sun, 21 Jan 2024 21:53:22 +0000 (22:53 +0100)]
use newly available false//0

2 years agono longer use (->)//2, since it is implementation dependent
Markus Triska [Sun, 21 Jan 2024 21:50:36 +0000 (22:50 +0100)]
no longer use (->)//2, since it is implementation dependent

2 years agoremove checks that are now no longer needed due to representation errors
Markus Triska [Sat, 20 Jan 2024 10:02:54 +0000 (11:02 +0100)]
remove checks that are now no longer needed due to representation errors

2 years agoENHANCED: Throw representation errors for DCG bodies that use unsupported constructs.
Markus Triska [Sat, 20 Jan 2024 09:33:24 +0000 (10:33 +0100)]
ENHANCED: Throw representation errors for DCG bodies that use unsupported constructs.

This addresses #2285.

2 years agoMODIFIED: (->)/2 in DCGs is now only supported in the context of if-then-else.
Markus Triska [Sat, 20 Jan 2024 09:24:57 +0000 (10:24 +0100)]
MODIFIED: (->)/2 in DCGs is now only supported in the context of if-then-else.

That is, ( If -> Then ; Else ) is still supported, but ( If -> Then ) not.

2 years agoMerge pull request #2301 from aarroyoc/docs-copy-term-3
Mark Thom [Fri, 19 Jan 2024 17:18:59 +0000 (10:18 -0700)]
Merge pull request #2301 from aarroyoc/docs-copy-term-3

Move copy_term/3 to library(iso_ext)

2 years agoMerge pull request #2300 from aarroyoc/fix-2298
Mark Thom [Fri, 19 Jan 2024 17:15:35 +0000 (10:15 -0700)]
Merge pull request #2300 from aarroyoc/fix-2298

Throw error in call_residue_vars/2

2 years agoMove copy_term/3 to library(iso_ext)
Adrián Arroyo Calle [Fri, 19 Jan 2024 16:33:45 +0000 (17:33 +0100)]
Move copy_term/3 to library(iso_ext)

2 years agoThrow error in call_residue_vars/2
Adrián Arroyo Calle [Fri, 19 Jan 2024 15:58:26 +0000 (16:58 +0100)]
Throw error in call_residue_vars/2

2 years agoadd better no op detection in char_reader.rs (#2297)
Mark [Wed, 17 Jan 2024 04:50:53 +0000 (21:50 -0700)]
add better no op detection in char_reader.rs (#2297)

2 years agoadd #2293 tests, advance continuable HeapPStrIters away from unpacked compounds ...
Mark [Sun, 14 Jan 2024 22:07:33 +0000 (15:07 -0700)]
add #2293 tests, advance continuable HeapPStrIters away from unpacked compounds (#2293)

2 years agofix additional tests, make better use of existing code (#2293)
Mark [Sat, 13 Jan 2024 19:01:20 +0000 (12:01 -0700)]
fix additional tests, make better use of existing code (#2293)

2 years agofix additional tests (#2293)
Mark [Sat, 13 Jan 2024 05:01:01 +0000 (22:01 -0700)]
fix additional tests (#2293)

2 years agoadd missing CStr branch to unify_partial_string (#2293)
Mark [Fri, 12 Jan 2024 20:58:46 +0000 (13:58 -0700)]
add missing CStr branch to unify_partial_string (#2293)

2 years agoMerge pull request #2276 from triska/hophrase
Mark Thom [Thu, 11 Jan 2024 18:56:10 +0000 (11:56 -0700)]
Merge pull request #2276 from triska/hophrase

ADDED: Support for higher-order non-terminals phrase//[2,3]

2 years agoMerge pull request #2281 from bakaq/miri
Mark Thom [Wed, 10 Jan 2024 19:13:14 +0000 (12:13 -0700)]
Merge pull request #2281 from bakaq/miri

Initial Miri support

2 years agoMake "cargo miri test" actually run
bakaq [Tue, 9 Jan 2024 05:37:38 +0000 (02:37 -0300)]
Make "cargo miri test" actually run

2 years agofix cargo fmt --check
Mark [Tue, 9 Jan 2024 01:12:19 +0000 (18:12 -0700)]
fix cargo fmt --check

2 years agoMerge pull request #2280 from notoria/clpz
Mark Thom [Tue, 9 Jan 2024 00:39:18 +0000 (17:39 -0700)]
Merge pull request #2280 from notoria/clpz

Special case for `(^)/2`

2 years agocheck for PStr in eager stackful preorder iterator before adding tail of PStrOffset...
Mark [Tue, 9 Jan 2024 00:36:41 +0000 (17:36 -0700)]
check for PStr in eager stackful preorder iterator before adding tail of PStrOffset (#2272)

2 years agoSpecial case for `(^)/2`
notoria [Mon, 8 Jan 2024 20:50:02 +0000 (21:50 +0100)]
Special case for `(^)/2`

The only solutions for `Z #= X^Z` are `X = Z, X in -1\/1`. Also helps
avoid big numbers.

2 years agoMerge pull request #2278 from notoria/clpz
Mark Thom [Mon, 8 Jan 2024 01:59:38 +0000 (18:59 -0700)]
Merge pull request #2278 from notoria/clpz

Small fixes for `CLP(ℤ)`

2 years agoMerge pull request #2277 from triska/master
Mark Thom [Mon, 8 Jan 2024 01:59:18 +0000 (18:59 -0700)]
Merge pull request #2277 from triska/master

Correct arithmetic disequalities accidentally broken in f5d9a67f3688ec9bb08dd3add05614552e082555

2 years agoFix bound computation in `(^)/2`
notoria [Sun, 7 Jan 2024 19:19:40 +0000 (20:19 +0100)]
Fix bound computation in `(^)/2`

?- A in 0..1, B in-1..0, A^2 #= B.
   false. % unexpected.
?- A^2 #= B, A in 0..1, B in-1..0.
   A = 0, B = 0.