Consider "./" to be the directory of this file.

Attention!
  Prior to running the "sym_num_train_scalability_S*_fixing.py" scripts, the file "./htssr/primivies.py" needs to be edited manually to keep only the number of variables indicated in the file name (1, 2, 3, 4). For instance, if the number is 1 (1 variable), the "_variables" list inside the primitives.py need to be commented such that only "x" remains; For 2, "x", and "y" must remain and so on.
  Those scripts are from the "n_var versus SSR" scalability experiment.

  For "sym_num_train_scalability_S3_samp_eff.py", the variable "n_data_samples" needs to be edited before running. It is the number of data points in the "sample-efficiency" experiment. Make sure the primitives.py has "x", "y", and "z" as variables. "sym_num_train_scalability_S3_samp_eff.py" is for the "dummy" baseline, and doesn't need to be edited.

  For "sym_num_train_scalability_domains_fixing.py", the variable "n_domains" need to be edited. It is the number of domains from the "number of domains versus SSR" experiment.

  For "sym_num_train_scalability_S3_no_sorts_fixing.py", just make sure the primitives.py has "x", "y", and "z" as variables. It is from the ablation experiment about the "Sort-Diff" features.

  For "sym_num_train_scalability_S3_const.py", the "_constants" list must be
    _constants = [
        ("CONST", lambda: 1.109801, lambda: "\\Box", lambda: 1.109801),
    ]
  with "x", "y", and "z" as variables. It is from the ablation experiment comparing sampling the constant placeholder value versus using a fixed value during training.

  For the "sym_num_train_scalability_S3_canon_fixing.py" script, the variable "max_domain_size" needs to be edited before running. It is the "maximum sequence length" of the ablation experiment about the impact of such variable in the SSR.


Taken the necessary precautions, each script can be called without passing arguments.

During the execution, log files are created inside the "SymNumNet" folder. After completion, the "./SymNumNet/compute_ssr.py" script can be called with the log filename and two more arguments: the smaller length (5 or 7 if n_var = 4) and the bigger length (10).
