This is a set of programs to rigorously verify the conditions that appear in "On parameter loci of the Hénon family" by ZA and Yutaka Ishii.


You need to have the following programs installed properly on your computer.

Download and Compilation

  1. Download locus.tar.gz and extract it. Then a directory named locus will be created.
  2. Change the current directory to locus/src and edit makefile therein according to your environment. You need to set variables BOOSTDIR to the directory where boost is installed (by default, it is ~/boost/) and CXX to the name of your C++ compiler (by default, it is g++).
  3. At the directory locus/src, type make to compile all programs. Binary files will be installed in locus/bin.

How to Run

  1. First we need to generate the data files. Change the current directory to locus/run and execute Python scripts data_interpolation_pos.py and data_interpolation_nes.py therein. These scripts read the data of boxes at selected parameter values (stored in "locus/data/positive_distinguished" and "locus/data/negative_distinguished") and generate the data at other parameter values by linear interpolation. The generated data files will be installed in "locus/data/positive" and "locus/data/negative" (Remark: directories and files with "positive" or "pos" in their names are programs and data for b > 0, "negative" or "neg" for b < 0).
  2. Run the following scripts at locus/run . These script files have two parameters process_number and max_process to specify the number of processes that you want to run in parallel. If you want to run multiple processes in parallel, set max_process to the number of processes and run the script for process_number = 0, 1, ..., max_process - 1. To run the program in a single process mode, call these scripts without a parameter. If the script exits normally with no error message, the verification is completed.
    run_pos_CMC_B.py [process_number max_process]
    Prove Lemma 2.18 (Crossed Mapping Condition) for b > 0 and Lemma 3.4.
    run_neg_CMC_B.py [process_number max_process]
    Prove Lemma 2.18 (Crossed Mapping Condition) for b < 0 and Lemma 3.7.
    run_neg_C.py [process_number max_process]
    Prove Lemma 3.11.
    run_neg_D.py [process_number max_process]
    Prove Lemma 3.13.
    run_pos_E.py [process_number max_process]
    Prove Lemma 5.6.
    run_neg_E.py [process_number max_process]
    Prove Lemma 5.8.
    run_pp.py [process_number max_process]
    Prove (i) of Theorem 2.12 by showing the existence of a periodic point of period 7 in C^2 \setminus R^2.