Hi Carlo,
As I understand your question, you are able to convert C, E, A to a set of intervals but want to know how to find the scales that include these intervals. I would use Python's
set capabilities:
scale_with_intervals
use scale_with_intervals($name, $intervals)
when
scale($name, $scale_intervals)
check set($scale_intervals).issuperset($intervals)
This will succeed for each scale that includes the intervals. The scale facts would look like:
scale(major_scale, (1, 2, 3, 4, 5, 6, 7))
Does this answer your question?
-Bruce