Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle "size loops" when changing structure #34

Open
DrChainsaw opened this issue Aug 19, 2019 · 1 comment
Open

Handle "size loops" when changing structure #34

DrChainsaw opened this issue Aug 19, 2019 · 1 comment

Comments

@DrChainsaw
Copy link
Owner

DrChainsaw commented Aug 19, 2019

Removing a vertex which happens to be the only SizeAbsorb vertex in a fork-path which is eventually joined by a SizeInvariant vertex is makes the graph invalid if there is a SizeStack with more than one input after the removed vertex.

Reason is that this results in the impossible situation where the output size of the SizeStack must be equal to its own output size (due to SizeInvariant forcing this on the path where the SizeAbsorb vertex was removed) plus a non-zero term (from the other inputs).

Possible strategies to deal with this are:
1. Detect the size-cycle and don't remove such vertices (probably easy). done in #35
2. Remove the whole path (might be hard).
3. Remove the vertex and connect the loose ends to some "nearby" vertices (another path maybe) for which the situation does not occur (head hurts).

@DrChainsaw
Copy link
Owner Author

Don't forget to add the above for edge creation and (most likely) removal.

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

No branches or pull requests

1 participant