Table setup for a recipe creator (using a created thing as an input in a new created thing)

I have read several posts on this subject, but none have exactly fit my use case. Here’s what I am trying to do.

I am building an internal business app that is essentially a mixture recipe generator, which also back calculates the actual concentrations of ingredients. I need to know how to set up the tables so that a mixture can be used to create another mixture. For example, a mixture (Mixture 1) is created that is 30% part A and 70% part B. That mixture is then used as an ingredient in a new mixture (Mixture 2) that will be 20% Mixture 1 and 80% part B. That will make the concentration on part A in Mixture 2 to be 6% and and part B to be 94%. All this is necessary because the scales used to weigh out the material are only accurate as long as they are measuring above a certain mass.

My first thought would be to have a table of part numbers that is the parent of a table with mixture components and display the components in a repeating group. Then, if a mixture is one of the “components” display that mixture as a repeating group in the original repeating group. But that creates a circular reference, doesn’t it (a group of mixture components linked to a part number linked to a part number)?

I am utterly lost on how to set this up. HELP!!