Usage: org.perses.Main [options]
  Options:
    --help, -h
      print help message

[Verbosity]  Options:
    --verbosity
      verbosity of logging
      Default: INFO
    --list-verbosity-levels
      list all verbosity levels

[Version]  Options:
    --version
      print the version

[Inputs]  Options:
  * --test-script, --test, -t
      The test script to specify the property the reducer needs to preserve.
  * --input-file, --input, -i
      The input file to reduce

[Outputs]  Options:
    --output-dir, -o
      The output directory to save the reduced result.

[General Reduction Control]  Options:
    --fixpoint
      iterative reduction till fixpoint
      Default: true
    --threads
      Number of reduction threads: a positive integer, or 'auto'.
      Default: auto
    --code-format
      The format of the reduced program.
      Possible Values: [SINGLE_TOKEN_PER_LINE, ORIG_FORMAT, COMPACT_ORIG_FORMAT, PYTHON3_FORMAT, COMPACT_PYTHON3_FORMAT]

[Output Refining Control]  Options:
    --call-formatter
      call a formatter on the final result
      Default: false
    --format-cmd
      the command to format the reduced source file
      Default: <empty string>
    --call-creduce
      call C-Reduce when Perses is done.
      Default: false
    --creduce-cmd
      the C-Reduce command name or path
      Default: creduce

[Reduction Algorithm Control]  Options:
    --alg
      reduction algorithm: use --list-algs to list all available algorithms
    --list-algs
      list all the reduction algorithms.
    --enable-token-slicer
      Enable token slicer after syntax-guided reduction is done. Maybe slow.
      Default: false
    --enable-tree-slicer
      Enable tree slicer after syntax-guided reduction, and before token 
      slicer 
      Default: false
    --enable-line-slicer
      Enable line slicer after syntax-guided reduction, and before token 
      slicer 
      Default: false
    --default-delta-debugger-for-kleene
      The default delta debugger algorithm to reduce kleene nodes.
      Default: DFS
      Possible Values: [PRISTINE, PERSES_VARIANT_OF_PRISTINE, DFS, BFS, CDD, PROBDD, WDD]

[Cache Control]  Options:
    --query-caching
      Enable query caching for test script executions.
      Default: AUTO
      Possible Values: [TRUE, FALSE, AUTO]

[Profiling]  Options:
    --progress-dump-file
      The file to record the reduction process. The dump file can be large..
    --append-to-progress-dump-file
      Whether to append the reduction progress to the progress dump file
      Default: false
    --stat-dump-file
      The file to save the statistics collected during reduction.
    --profile-query-cache
      The file to save the profiling data of the query cache.
    --profile-query-cache-memory
      The file to save the profiling data of the query cache.
    --profile-actionset
      The file to save information of all the created edit action sets.
    --profile
      profile the reduction process for analysis
      Default: false
    --script-execution-timeout-in-seconds
      the interval in seconds to timeout the test script executions. the 
      default timeout is 600 seconds.
      Default: 600
    --script-execution-keep-waiting-after-timeout
      keep trying even after the script execution timeouts.
      Default: true

[Language Control]  Options:
    --list-langs
      List all the supported langauges.
    --designated-parser-facade-class-name
      The parser facade to be used to parse the input program
      Default: <empty string>
    --list-parser-facades
      List all the available parser facades.
    --language-ext-jars
      A list of JAR files to support new languages
      Default: []

[Vulcan Reducer Control]  Options:
    --enable-vulcan
      Enable vulcan (using auxiliary reducers to help produce smaller 
      reduction output).
      Default: false
    --non-deletion-iteration-limit
      The maximum number of continuous non-deletion iterations allowed.
      Default: 10
    --window-size
      The window size used to perform local exhaustive pattern reduction.
      Default: 4
    --vulcan-fixpoint
      Enable vulcan fixpoint iteratively using auxiliary reducers until no 
      progress can be made
      Default: false

