template <> int hkz(Options &o, ZZ_mat<mpz_t> &b) { const char *format = o.output_format ? o.output_format : "b"; int flags = 0; if (o.verbose) flags |= HKZ_VERBOSE; string dump_gso_filename; if (o.bkz_flags & BKZ_DUMP_GSO) { dump_gso_filename = o.bkz_dump_gso_filename; flags |= BKZ_DUMP_GSO; } //int status = hkz_reduction(b, flags, o.float_type, o.precision, dump_gso_filename); int status = hkz_reduction(b, flags, o.float_type, o.precision); for (int i = 0; format[i]; i++) { if (format[i] == 'b') { if (format[i + 1] == 'k') { b.print_comma(cout); i++; } else cout << b << endl; } } if (status != RED_SUCCESS) { cerr << "Failure: " << get_red_status_str(status) << endl; } return status; }
template <> int hkz(Options &o, ZZ_mat<mpz_t> &b) { int flags = 0; if (o.verbose) flags |= HKZ_VERBOSE; int status = hkz_reduction(b, flags, o.float_type, o.precision); cout << b << endl; if (status != RED_SUCCESS) { cerr << "Failure: " << get_red_status_str(status) << endl; } return status; }