I am new to the topic of propositional logic and boolean expressions. So this is why I need help. Here is my problem:
In the car industry you have thousand of different variants of components available to choose from when you buy a car. Not every component is combinable, so for each car there exist a lot of rules that are expressed in propositional logic. In my case each car has between 2000 and 4000 rules.
They look like this:
- A → B ∨ C ∨ D
- C → ¬F
- F ∧ G → D
- ...
where "∧" = "and" / "∨" = "or" / "¬" = "not" / "→" = "implication".
The variables A, B, C, ... are linked to the components in the bill of material. The data I have consists of pairs of components with their linked variables.
Example:
- Component_1, Component_2: (A) ∧ (B)
- Component_1, Component_3: (A) ∧ (C ∨ F)
- Component_3, Component_5: (B ∨ G)
- ...
Now, my question is how to solve this problem. Specifically, I would like to know if each combination of the components is possible according to rules above.
- Which tool, software and algorithm can solve these type of problems?
- Is there a illustrative example?
- How can I automate it, so I can check each combination in my list?
- Generally, what should I search for in Google to deepen my knowledge in this topic?
Thank you very much for your help! Olaf