reserve MS for satisfying_equiv MusicStruct;
reserve a,b,c,d,e,f for Element of MS;
reserve MS for satisfying_octave_descendent_constructible
  classical_octave satisfying_octave_constructible classical_fifth
  satisfying_fifth_constructible satisfying_harmonic_closed satisfying_Nat
  satisfying_commutativity satisfying_interval satisfying_equiv satisfying_Real
  non empty MusicStruct,
  fondamentale,frequency for Element of MS;
reserve                              MS for MusicSpace,
        fondamentale, frequency, f1, f2 for Element of MS;
reserve       HPS for Heptatonic_Pythagorean_Score,
        frequency for Element of HPS;
reserve       HPS for Heptatonic_Pythagorean_Score,
        frequency for Element of HPS;

theorem
  heptatonic_pythagorean_scale(HPS,frequency) is ionan
  proof
    set scale = heptatonic_pythagorean_scale(HPS,frequency);
A1: scale is heptatonic by Th88BIS;
    reconsider t1 = pythagorean_tone,
               t2 = heptatonic_pythagorean_semitone as positive Real;
    ex r be positive Real st r = frequency &
    Octave(HPS,frequency) = 2 * r by Def15;
    then
A2: hepta_octave(HPS,frequency) = 2 * @frequency;
    1 in Seg 8 & 2 in Seg 8 & 3 in Seg 8 & 4 in Seg 8 &
      5 in Seg 8 & 6 in Seg 8 & 7 in Seg 8 & 8 in Seg 8
      by FINSEQ_1:1;
    then scale.1 = #(scale,1) & scale.2 = #(scale,2) &
      scale.3 = #(scale,3) & scale.4 = #(scale,4) &
      scale.5 = #(scale,5) & scale.6 = #(scale,6) &
      scale.7 = #(scale,7) & scale.8 = #(scale,8)
      by Def28;
    then hepta_fondamental(HPS,frequency) = #(scale,1) &
      hepta_1(HPS,frequency) = #(scale,2) &
      hepta_2(HPS,frequency) = #(scale,3) &
      hepta_3(HPS,frequency) = #(scale,4) &
      hepta_4(HPS,frequency) = #(scale,5) &
      hepta_5(HPS,frequency) = #(scale,6) &
      hepta_6(HPS,frequency) = #(scale,7) &
      hepta_octave(HPS,frequency) = #(scale,8)
      by A2,Th88;
    then t1 * t1 * t1 * t1 * t1 * t2 * t2 = 2 &
      intrval( #(scale,1), #(scale,2)) = t1 &
      intrval( #(scale,2), #(scale,3)) = t1 &
      intrval( #(scale,3), #(scale,4)) = t2 &
      intrval( #(scale,4), #(scale,5)) = t1 &
      intrval( #(scale,5), #(scale,6)) = t1 &
      intrval( #(scale,6), #(scale,7)) = t1 &
      intrval( #(scale,7), #(scale,8)) = t2 by Th90;
    hence thesis by A1,Def29;
  end;
