Google OR-Tools
v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
model_validator.h
Go to the documentation of this file.
1
// Copyright 2010-2025 Google LLC
2
// Licensed under the Apache License, Version 2.0 (the "License");
3
// you may not use this file except in compliance with the License.
4
// You may obtain a copy of the License at
5
//
6
// http://www.apache.org/licenses/LICENSE-2.0
7
//
8
// Unless required by applicable law or agreed to in writing, software
9
// distributed under the License is distributed on an "AS IS" BASIS,
10
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
// See the License for the specific language governing permissions and
12
// limitations under the License.
13
14
#ifndef ORTOOLS_MATH_OPT_VALIDATORS_MODEL_VALIDATOR_H_
15
#define ORTOOLS_MATH_OPT_VALIDATORS_MODEL_VALIDATOR_H_
16
17
#include "absl/status/status.h"
18
#include "absl/status/statusor.h"
19
#include "
ortools/math_opt/core/model_summary.h
"
20
#include "
ortools/math_opt/model.pb.h
"
21
#include "
ortools/math_opt/model_update.pb.h
"
22
23
namespace
operations_research
{
24
namespace
math_opt
{
25
26
// Runs in O(size of model) and allocates O(#variables + #linear constraints)
27
// memory.
28
absl::StatusOr<ModelSummary>
ValidateModel
(
const
ModelProto
& model,
29
bool
check_names =
true
);
30
31
// Validates the update is consistent both internally and with current model (as
32
// given by model_summary) and updates the model_summary.
33
//
34
// Performance: runs in O(size of update), allocates at most
35
// O(#new or deleted variables + #new or deleted linear constraints).
36
//
37
// If the function returns an error, no guarantees are made on the state of
38
// model_summary.
39
absl::Status
ValidateModelUpdate
(
const
ModelUpdateProto
& model_update,
40
ModelSummary
& model_summary);
41
42
}
// namespace math_opt
43
}
// namespace operations_research
44
45
#endif
// ORTOOLS_MATH_OPT_VALIDATORS_MODEL_VALIDATOR_H_
operations_research::math_opt::ModelProto
Definition
model.pb.h:2173
operations_research::math_opt::ModelUpdateProto
Definition
model_update.pb.h:2196
model.pb.h
model_summary.h
model_update.pb.h
operations_research::math_opt
Definition
gurobi_isv.cc:28
operations_research::math_opt::ValidateModelUpdate
absl::Status ValidateModelUpdate(const ModelUpdateProto &model_update, ModelSummary &model_summary)
Definition
model_validator.cc:293
operations_research::math_opt::ValidateModel
absl::StatusOr< ModelSummary > ValidateModel(const ModelProto &model, const bool check_names)
Definition
model_validator.cc:246
operations_research
OR-Tools root namespace.
Definition
binary_indexed_tree.h:21
operations_research::math_opt::ModelSummary
Definition
model_summary.h:128
ortools
math_opt
validators
model_validator.h
Generated by
1.15.0