Skip to content

Support true bemcell algebra #91

@qfox

Description

@qfox

Cross tech decl algebra:

// U — merge
[{ entity: A }] U [{ entity: A, tech: '1' }] 
     [{ entity: A }, { entity: A, tech: '1' }] // Because any tech can be not '1' in result
[{ entity: A, tech: '1' }] U [{ entity: A, tech: '2' }] 
     [{ entity: A, tech: '1' }, { entity: A, tech: '2' }]

// / — subtract
[{ entity: A, tech: 'specified' }] / [{ entity: A }]  []
[{ entity: A, layer: 'specified' }] / [{ entity: A }]  []
[{ entity: A }] / [{ entity: A, tech: 'specified' }]  ERROR
[{ entity: A }] / [{ entity: A, layer: 'specified' }]  ERROR
[{ entity: A, tech: 'specified' }] / [{ entity: A, layer: 'specified' }]  ERROR
[{ entity: A, layer: 'specified' }] / [{ entity: A, tech: 'specified' }]  ERROR

// П — intersect
[{ entity: A }] П [{ entity: A, tech: 'specified' }]  [{ entity: A, tech: 'specified' }]
[{ entity: A, tech: '1' }] П [{ entity: A, tech: '2' }]  []
[{ entity: A, tech: '1' }] П [{ entity: A, layer: 'l' }]  [{ entity: A, tech: '1', layer: 'l' }]

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions