Synthesis_incorporation/value_search/value_search.py [641:670]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            if (new_value.shape == output_value.shape
                and new_value.dtype != output_value.dtype
                and operation_filtering.is_castable(new_value, dtype_value)
            ):
                casted_value = None
                if output_value.dtype == torch.int:
                    casted_value = int_operation.apply([new_value], settings)
                elif output_value.dtype == torch.bool:
                    casted_value = bool_operation.apply([new_value], settings)
                elif output_value.dtype == torch.float:
                    casted_value = float_operation.apply([new_value], settings)
                if casted_value == output_value:
                    possible_first_solution = not solutions
                    # Found solution(s), but some may be bad.
                    _record_solutions(
                        casted_value,
                        0,
                        start_time,
                        solutions,
                        solution_expression_set,
                        benchmark,
                        settings,
                    )
                    if possible_first_solution and solutions:
                        end_time = min(
                            end_time,
                            timeit.default_timer() + settings.max_extra_solutions_time,
                        )
                    if len(solutions) >= settings.max_solutions:
                        return solutions, value_set, values_by_weight, statistics
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



Synthesis_incorporation/value_search/value_search.py [871:900]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                if (new_value.shape == output_value.shape
                    and new_value.dtype != output_value.dtype
                    and operation_filtering.is_castable(new_value, dtype_value)
                ):
                    casted_value = None
                    if output_value.dtype == torch.int:
                        casted_value = int_operation.apply([new_value], settings)
                    elif output_value.dtype == torch.bool:
                        casted_value = bool_operation.apply([new_value], settings)
                    elif output_value.dtype == torch.float:
                        casted_value = float_operation.apply([new_value], settings)
                    if casted_value == output_value:
                        possible_first_solution = not solutions
                        # Found solution(s), but some may be bad.
                        _record_solutions(
                            casted_value,
                            0,
                            start_time,
                            solutions,
                            solution_expression_set,
                            benchmark,
                            settings,
                        )
                        if possible_first_solution and solutions:
                            end_time = min(
                                end_time,
                                timeit.default_timer() + settings.max_extra_solutions_time,
                            )
                        if len(solutions) >= settings.max_solutions:
                            return solutions, value_set, values_by_weight, statistics
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



