Skip to content

Reworking of information set and event concepts in pygambit - #1099

Merged
tturocy merged 3 commits into
masterfrom
dev_infoset
Aug 30, 2026
Merged

Reworking of information set and event concepts in pygambit#1099
tturocy merged 3 commits into
masterfrom
dev_infoset

Conversation

@tturocy

@tturocy tturocy commented Aug 30, 2026

Copy link
Copy Markdown
Member

No description provided.

`pygambit` now distinguishes `Infoset` and `Event` objects.  Both are now implemented by anchoring on a representative node (as in union-find).  As implemented the representative node is the first one encountered in the information set/event when walking the tree depth-first.

Information sets and events are queried via `Game.get_infosets` and `Game.get_events`, respectively.

Operations which previously took an information set/event now take a member node (or its label) to indicate the information set/event intended - this does not have to be the "representative node".
@review-notebook-app

Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

* Strips the `Action` class down to a simple label and probability.
* All other properties were redundant, in that they could be otherwise derived.
* `Sequence.actions` is now a tuple of labels rather than Action objects.
This completes the removal of `Action` as an object.  Actions are now entirely referenced by their label.

To accommodate the additional context required, `Node.prior_action` and `Node.own_prior_action` return a namedtuple `Branch` that includes the relevant ancestor-node context.
@tturocy
tturocy marked this pull request as ready for review August 30, 2026 10:50
@tturocy
tturocy merged commit 6220885 into master Aug 30, 2026
26 checks passed
@tturocy
tturocy deleted the dev_infoset branch August 30, 2026 10:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant