Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1# ------------------------------------------------------------------------------ 

2# Copyright (C) 2019 Maximilian Stahlberg 

3# 

4# This file is part of PICOS. 

5# 

6# PICOS is free software: you can redistribute it and/or modify it under the 

7# terms of the GNU General Public License as published by the Free Software 

8# Foundation, either version 3 of the License, or (at your option) any later 

9# version. 

10# 

11# PICOS is distributed in the hope that it will be useful, but WITHOUT ANY 

12# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 

13# A PARTICULAR PURPOSE. See the GNU General Public License for more details. 

14# 

15# You should have received a copy of the GNU General Public License along with 

16# this program. If not, see <http://www.gnu.org/licenses/>. 

17# ------------------------------------------------------------------------------ 

18 

19"""Optimization problem reformulation recipes.""" 

20 

21from ..apidoc import api_end, api_start 

22 

23_API_START = api_start(globals()) 

24# ------------------------------- 

25 

26 

27from .reformulation import Reformulation # noqa 

28 

29# Reformulations that appear in SORTED_REFORMS. 

30from .reform_epigraph import EpigraphReformulation # noqa 

31from .reform_constraint import * # noqa 

32from .reform_constraint import TOPOSORTED_REFORMS as _SORTED_CONREFORMS # noqa 

33from .reform_dualize import Dualization # noqa 

34 

35# Mandatory reformulations that do not appear in SORTED_REFORMS. 

36from .reform_options import ExtraOptions # noqa 

37 

38#: A sequence of reformulations in topological order. 

39SORTED_REFORMS = [EpigraphReformulation] + _SORTED_CONREFORMS + [Dualization] 

40 

41 

42# -------------------------------------- 

43__all__ = api_end(_API_START, globals())