GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Clarify in docs that monoids are commutative and associative by eriknw · Pull Request #469 · python-graphblas/python-graphblas

Conversation

@eriknw

@eriknw eriknw commented Jun 23, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Technically Monoids don't need to commute, but behavior is ill-defined (or invalid) if non-commutative monoids are used for reductions and semirings, so, practically speaking, all monoids should commute in GraphBLAS. I don't know of any use cases for non-commutative monoids--a binary operator should always be possible to use and preferred.

Fixes #468.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@eriknw
Clarify in docs that monoids are commutative and associative
d05644e
@eriknw eriknw added the documentation Improve or add to documentation label Jun 23, 2023
@eriknw
eriknw requested review from SultanOrazbayev and jim22k June 23, 2023 18:45
@eriknw eriknw mentioned this pull request Jun 23, 2023
[pyos][docs] "Monoids are also associative, so the order of the inputs does not matter." #468
Closed
@coveralls

coveralls commented Jun 23, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

Coverage Status

coverage: 99.55% (+11.6%) from 87.908% when pulling 1155676 on eriknw:monoids_commute_and_associate into da01661 on python-graphblas:main.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

SultanOrazbayev
SultanOrazbayev approved these changes Jun 27, 2023
View reviewed changes

@SultanOrazbayev SultanOrazbayev left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, with a possible clarification that GraphBLAS uses commutative monoids (so commutative is not part of the definition of a monoid, but the monoids used by GraphBLAS also have this property). That's my understanding from the "Design of the GraphBLAS API for C" paper and, ahem, Wikipedia.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@eriknw
Refine language about commutative monoids.
480e7a7
@eriknw

eriknw commented Jun 28, 2023

Copy link
Copy Markdown
Member Author

Thanks for looking @SultanOrazbayev. Refined.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

SultanOrazbayev
SultanOrazbayev approved these changes Jun 28, 2023
View reviewed changes

@SultanOrazbayev SultanOrazbayev left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, LGTM!

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@eriknw
Merge branch 'main' into monoids_commute_and_associate
1155676
@eriknw
eriknw merged commit 5e18a9c into python-graphblas:main Jun 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@SultanOrazbayev SultanOrazbayev SultanOrazbayev approved these changes
@jim22k jim22k Awaiting requested review from jim22k

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

documentation Improve or add to documentation

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

[pyos][docs] "Monoids are also associative, so the order of the inputs does not matter."

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@eriknw @coveralls @SultanOrazbayev
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.