Contractivity of Linear Fractional Transformations One possible approach to exact real arithmetic is to use linear fractional transformations (LFT's) to represent real numbers and computations on real numbers. Recursive expressions built from LFT's are only convergent (i.e., denote a well-de ned real number) if the involved LFT's are su ciently contractive. In this paper, we de ne a notion of contractivity for LFT's. It is used for convergence theorems and for the analysis and improvement of algorithms for elementary functions. Linear Fractional Transformations (LFT's) provide an elegant approach to real number arithmetic 8, 17, 11, 14, 12, 6] . One-dimensional LFT's x 7 ! ax+c bx+d are used in the representation of real numbers and to implement basic unary functions, while two-dimensional LFT's (x; y) 7 ! axy+cx+ey+g bxy+dx+fy+h provide binary operations such as addition and multiplication, and can be combined to obtain in nite expression trees denoting transcendental functions.. LFT's can be modeled within linear algebra. If the four parameters of a one-dimensional LFT are written as a (2,2)-matrix (shortly called matrix), functional composition becomes matrix multiplication. Likewise, the eight parameters of a two-dimensional LFT can be written as a (2,4)-matrix (called tensor). Basic computational steps can be realized as variants of matrix multiplication.. In the LFT approach, real numbers are represented by in nite products of matrices. Two variants di ering in the choice of these matrices have been considered by the group of Edalat and Potts at Imperial College 13, 6] . In the general approach, the rst matrix is arbitrary, while the remaining matrices are positive, i.e., satisfying a; b; c; d 0. The digit approach (also called exact oating point) is more restrictive: the rst matrix in the product is one of four sign matrices, and the remaining matrices are members of a xed nite set of positive digit matrices. FB 14 { Informatik, Universit at des Saarlandes, Postfach 151150, D-66041 Saarbr ucken, Germany, e-mail: heckmann@cs.uni-sb. de We present part of the existing framework of the LFT approach in Section 2. This provides the background for understanding the results in the remainder of this paper.. Digit matrices are made such that every in nite product of digit matrices converges, i.e., denotes a single well-de ned real number (possibly 1). Yet there are divergent general products, for instance the product of identity matrices. A general product only converges if its matrices denote LFT's that are su ciently contractive. In Section 3, we derive a notion of contractivity for matrices, and prove a su cient criterion for the convergence of in nite products of matrices. In the LFT approach, non-rational elementary functions can be represented by in nite tensor expressions: fx = t 0 x(t 1 x(t 2 x(: : :))). In general, these expressions may or may not converge for a xed real argument x. As in the case of matrices, convergence can be guaranteed if the tensors (two-dimensional LFT's) in the expression are su ciently contractive. In Section 4, a notion of contractivity for tensors is derived from that for matrices and used to prove a su cient criterion for convergence of tensor expressions. In Section 5, tensor contractivity is used in the analysis of some tensor expressions proposed by Edalat's group. In certain cases, it is possible to modify these tensor expressions in order to achieve better convergence. The introduction of a contractivity for LFT's leads to a su cient criterion for the convergence of in nite matrix and tensor expressions. In addition to qualitative statements such as the expression converges or the expression may not converge, we obtain quantitative information from Prop. 3.4: the smaller the contractivity, the quicker the convergence. Surely, this will a ect the complexity of evaluating an expression to a speci ed accuracy, yet the details of the relationship between contractivity and complexity are still to be found.

O O B I I O O O O B I I O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Multilevel

symmetry-constraint

generation

for

retargeting

large

analog

layouts

Abstract-The

strong

impact

of

layout

intricacies

on

analogcircuit

performance

poses

great

challenges

to

analog

layout

automation.

Recently,

template-based

methods

have

been

shown

to

be

effective

in

reuse-centric

layout

automation

for

CMOS

analog

blocks

such

as

operational

amplifiers.

The

layout-retargeting

method

first

creates

a

template

by

extracting

a

set

of

constraints

from

an

existing

layout

representation.

From

this

template,

new

layouts

are

then

generated

corresponding

to

new

technology

processes

and

new

device

specifications.

For

large

analog

layouts,

however,

this

method

results

in

an

unmanageable

template

due

to

a

tremendous

increase

in

the

number

of

constraints,

especially

those

emerging

from

layout

symmetries.

In

this

paper,

we

present

a

new

method

of

multilevel

symmetry-constraint

generation

by

utilizing

the

inherent

circuit

structure

and

hierarchy

information

from

the

extracted

netlist.

The

method

has

been

implemented

in

a

layoutretargeting

system

called

Intellectual

Property

Reuse-based

Analog

IC

Layout

(IPRAIL)

and

demonstrated

times

reduction

in

the

number

of

symmetry

constraints

required

for

retargeting

an

analog-to-digital

converter

layout.

This

enables

our

retargeting

engine

to

successfully

handle

the

complexities

associated

with

large

analog

layouts.

While

manual

relayout

is

known

to

take

weeks,

our

layout-retargeting

tool

generates

the

target

layout

in

hours

and

achieves

comparable

electrical

performance.

A

GGRESSIVE

design

cycles

and

rapid

migrations

towards

newer

technologies

necessitate

a

reuse-based

design

philosophy

in

the

semiconductor

industry.

Decades

of

innovations

in

the

computer-aided-design

(CAD)

tools

for

digital

circuits

have

resulted

in

standard

flows

and

methodologies

for

the

optimum

reuse

of

existing

digital

designs.

Unfortunately,

the

analog

domain

still

awaits

major

innovations

to

facilitate

effective

design

reuse.

Indeed,

with

the

recent

focus

on

systemson-chips

that

combine

analog

and

digital

functionalities

on

the

same

integrated

circuit,

the

absence

of

CAD

tools

in

the

analog

domain

presents

a

serious

bottleneck

to

the

fast

realization

of

mixed-signal

designs.

In

analog

design,

tradeoffs

between

the

major

design

goals

like

gain,

bandwidth,

stability,

noise

reduction,

linearity,

and

power

minimization

demand

considerable

effort

and

time

from

the

designers.

Recently,

significant

progress

has

been

made

in

the

area

of

optimization

tools

that

automatically

synthesize

analog

circuits

to

meet

desired

performance

specifications.

However,

the

electrical

behavior

of

high-performance

analog

designs

is

affected

not

only

by

the

device

sizes

and

biasing

but

also

by

the

layout

styles

and

intricacies..

Process

and

temperature

variations

introduce

severe

mismatches

in

transistors

that

are

designed

to

behave

identically

Such

mismatches

drastically

affect

the

performance

of

analog

circuits

leading

to

dc

offsets

and

lower

commonmode

rejection.

In

differential

structures,

mismatches

can

also

lead

to

finite

even-order

distortion.

These

effects

can

be

alleviated

by

the

symmetric

layout

of

matched

transistors.

Thus,

due

to

their

strong

impact

on

design

performance,

matching

and

symmetry,

along

with

floorplanning,

placement,

and

parasiticdriven

wiring

consideration,

are

of

immense

importance

in

analog

layouts.

Often,

layout

designers

leverage

their

years

of

accumulated

expertise

to

"squeeze-in"

the

desired

analogcircuit

performance

by

careful

manual

crafting

of

layouts..

Naturally,

complex

requirements

on

analog

layouts

pose

a

huge

challenge

to

their

design

automation

Over

the

years,

macro-cell-based

constraint-driven

automated

placement

and

routing

methodologies

have

been

proposed

for

analog

circuits

Despite

the

generality

of

these

layout-automation

schemes,

their

output

layouts

are

often

inferior

to

the

layouts

manually

crafted

by

expert

designers

in

terms

of

electrical

performance

and

quality;

therefore,

these

layout-automation

schemes

are

yet

to

attain

acceptance

in

the

industry..

Several

attempts

have

been

made

to

include

designer's

knowledge

in

the

analog

layout-automation

process.

These

methods

rely

on

templates

constructed

by

designers

through

procedural

languages

and

require

significant

effort

for

template

setup.

Recently,

layout

retargeting

by

reusing

designer

expertise

embedded

in

existing

layouts

has

been

proposed.

The

Intellectual

Property

Reuse-based

Analog

IC

Layout

(IPRAIL)

tool

suite,

presented

in

and

automatically

creates

a

symbolic

structural

template

from

an

existing

layout

by

incorporating

floorplan,

symmetry,

and

device/wiring-alignment

information.

This

structural

template

is

then

used

to

generate

new

layouts

for

new

performance

specifications

and

technology

processes..

While

these

template-based

layout-automation

schemes

successfully

incorporate

designer's

expertise,

they

suffer

from

restricted

topologies

and

can

retarget

designs

only

to

compatible

IEEE

processes.

These

limitations

in

topology

can

be

largely

alleviated

by

combining

templates

with

device-layout

generators

More

importantly,

automatic

tools

such

as

IPRAIL

that

reuse

the

templates

allow

for

a

rapid

evaluation

of

whether

a

given

layout

topology

results

in

the

desired

circuit

performance.

Furthermore,

different

layouts

corresponding

to

different

specifications

can

be

easily

generated

after

the

template

is

constructed

once

Thus,

in

addition

to

the

retention

of

designer's

expertise,

the

template-based

methods

offer

several

advantages

that

far

outweigh

their

limitations..

Unfortunately

though,

all

of

these

procedural/template-based

schemes

suffer

a

few

critical

shortcomings

that

prevent

automation

of

large

analog

layouts.

Firstly,

the

layout

symmetry

for

matched

transistors

is

manually

imposed

on

the

template

through

a

graphical

user

interface

and

can

get

increasingly

prohibitive

as

the

circuit

size

increases.

Secondly,

and

more

importantly,

the

feasibility

and

efficiency

of

layout

retargeting

are

strongly

affected

by

the

number

of

symmetry/matching

constraints.

This

poses

serious

challenges

to

the

retargeting

of

large

layouts

that

contain

numerous

symmetry

constraints.

Therefore,

the

techniques

in

are

seldom

used

to

handle

layouts

larger

or

more

complex

than

operational

amplifiers..

In

this

paper,

we

present

techniques

for

efficient

constraint

generation

that

enable

automatic

layout

retargeting

of

large

analog

IP

blocks.

Our

new

contributions

are

as

follows.

Large

analog

circuits

require

symmetric

layouts

not

only

for

matched

transistors,

but

also

for

entire

subcircuits

that

need

to

be

identical

to

each

other.

Subcircuits

may

be

split

into

halves

and

laid

apart

in

one-or

two-dimensionally

symmetric

styles

so

as

to

ensure

similar

effects

of

process

and

temperature

gradients

for

all

subcircuits

that

are

identical

by

design.

Utilizing

extensive

mappings

between

the

extracted

netlist

and

layout

representations

of

the

design,

a

new

multilevel

constraint-generation

method

is

introduced.

This

multilevel

templating

scheme

achieves

a

smaller

template

size,

thereby

allowing

retargeting

of

large

layouts.

We

present

an

automatic

method

of

identifying

only

relevant

matched

transistors

from

the

circuit

netlist

and

imposing

corresponding

layout-level

symmetry

constraints.

Large

analog

IP

blocks

usually

contain

on-chip

resistors

and

capacitors.

Such

passive

devices

significantly

affect

circuit

performance

and

need

to

be

laid

out

carefully

to

minimize

the

parasitic

effects.

Furthermore,

passive

devices

identical

by

design

are

also

laid

out

symmetrically.

Our

layout-retargeting

tool

has

the

ability

to

automatically

impose

constraints

to

maintain

these

symmetry

and

spacing

restrictions

in

passive

devices..

Manual

intervention

during

template

creation

restricts

the

usability

of

retargeting

tools

to

smaller

layouts.

The

tool

presented

in

this

paper

achieves

effective

automation

of

template

creation

and

subsequent

layout

generation,

thereby

allowing

the

retargeting

of

large

analog

layouts.

Some

preliminary

results

of

this

work

were

presented

in

and

The

rest

of

the

paper

is

organized

as

follows.

Section

II

briefly

describes

the

layout-reuse

methodology

with

emphasis

on

IPRAIL

and

discusses

various

challenges

in

retargeting

large

analog

layouts.

Section

III

provides

an

overview

of

the

proposed

constraint-generation

scheme.

Sections

IV-VI

elaborate

the

various

steps

to

establish

mappings

between

the

netlist

and

layout

representations

of

the

existing

design.

Section

VII

describes

the

actual

constraint-generation

process.

Section

VIII

presents

experimental

results.

Section

IX

concludes

the

paper.

A

new

and

efficient

multilevel-symmetry-constraintgeneration

method

for

analog

layout

retargeting

is

presented.

Several

key

techniques,

such

as

multifinger

transistor

identification,

subgraph

isomorphism-based

subcircuit

extraction,

and

layout

clustering,

have

been

developed.

These

techniques

establish

extensive

mappings

between

the

netlist

and

the

layout

representation

of

an

analog

design

and

accomplish

automatic

identification

of

matched

transistor

pairs.

This

facilitates

efficient

multilevel-constraint

generation

that

enables

retargeting

of

large

analog

layouts.

The

efficacy

of

the

multilevelsymmetry-constraint-generation

scheme

is

demonstrated

for

several

complex

analog

layouts..

IPRAIL,

a

symbolic-template-based

layout-retargeting

tool,

has

been

enhanced

with

this

method.

This

enables

IPRAIL

to

successfully

retarget

large

analog

layouts

as

has

been

illustrated

by

the

retargeting

of

a

ADC

layout.

Large

analog

circuits

that

are

known

to

take

several

weeks

for

manual

layout

generation

are

automatically

retargeted

to

different

processes

and

specifications

within

hours

with

comparable

electrical

performances..

Future

research

includes

techniques

for

migrating

physical

layouts

to

considerably

different

technologies.

This

entails

automatic

device

removal

and

generation,

as

well

as

constraint

relaxation

to

address

potential

template

infeasibility.

Additionally,

explicit

wire

and

device

parasitic

control

is

essential

for

high-performance

analog

and

radio-frequency

integratedcircuit

layouts.

O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Function Call Optimization for Efficient Behavioral Synthesis Behavioral synthesis, which automatically synthesizes an RTL circuit from a sequential program, is one of promising technologies to improve the design productivity. This paper proposes a function call optimization method in behavioral synthesis from large sequential programs with a number of functions. We formulate the optimization problem using integer linear programming. Our experimental results show the reduction in the circuit area by up to 44.6%, compared with a traditional method. key words: behavioral synthesis, function calls, integer programming problem The size of LSIs is increasing year by year and the traditional Register-Transfer Level (RTL) design with Hardware Design Languages (HDLs) is approaching to its limit. Behavioral synthesis, which automatically synthesizes an RTL circuit from a sequential program, is one of promising solutions to improve the design productivity [1] , and is now being widely used in industry, especially in Japanese industry [2] . This paper addresses behavioral synthesis from large sequential programs written in C. In general, large programs consist of a number of functions. There are two traditional methods to handle function calls in behavioral synthesis: inlining and exlining. Inlining creates a single large function by inline expansion of all the functions and synthesize, while exlining runs behavioral synthesis for each function. For large programs, inlining suffers from resulting in a huge area and long delay of controller circuits. Exlining, on the other side, leads to a large datapath since the hardware resources cannot be shared between functions. This paper proposes a method to optimally determine functions to be inlined and ones to be exlined. We formulate the function call optimization problem using integer linear programming. This paper has proposed a method to optimally determine functions to be inlined and ones to be exlined/merged into sub module, which makes behavioral synthesis efficient. We have formally defined this method as an integer programming problem. Two sets of experiments have demonstrated its effectiveness such as the reduction in the circuit area by up to 44.6%, compared with a traditional method.. In the future, we plan to test our method more extensively using various application programs. Extension towards multiple modules is another future work. We conducted two sets of experiments to demonstrate the effectiveness of the proposed method for two benchmark programs; one is sqrt (the square-root), and the other is ludcmp (LU decomposition for a matrix) . Note that these programs are rather large (more than 1,000 lines of C code) . div, le, int to double compared with the DSP kernels which have been traditionally used in the past literature on behavioral synthesis. Each program consists of a main function and several doubleprecision floating-point arithmetic functions such as addition (add), multiplication (mul), and so on.. In the experiments, eXCite from [5] was used for behavioral synthesis. The clock frequency constraint was set to 50 MHz. Table 1 shows the number of states for each function and that of times which each function is called in each benchmark program.. Next, the proposed method gave the optimal partitioning of functions to be inlined and to be merged, with varying the constraint on the number of states. It took less than one second to find the optimal solution with an exhaustive search algorithm.. For each result given by the proposed method, we ran behavioral synthesis, logic synthesis, and place-and-route to evaluate the area and clock period of the design. Xilinx Virtex 2 was used as a target device, and ISE from [6] was used for logic synthesis and place-and-route. Registertransfer level simulation was also performed to measure the execution cycles. Tables 2 and 3 summarize the synthesis and simulation results for sqrt and ludcmp, respectively. The first column denotes the constraint on the number of states. The fourth column "gate count" means the equivalent gate count including not only LUTs but also built-in multipliers and block RAMs occupied by the design. The last column describes area-delay product. Area-delay product is defined as the product of area (gate count) and execution time. Since there is generally a trade-off between area and execution time, area-delay product is useful to comprehensively evaluate the designs. The results with function exlining are also shown for comparison. In both sets of experiments, function exlining gives the largest area due to sharing no resources between modules. On the other hand, the number of execution cycles is the shortest without necessity to send a parameter to determine the function to be executed.. As relaxing the constraint, on the contrary, the area tends to be smaller. It is because some resources required by several functions are shared by merging the functions into the same sub module, which also reduces the control path area. However, the number of execution cycles increased because of inter-module communication overhead. When all the functions are inlined, which is described in the lowest row in both Tables 2 and 3, and when the constraint is between 930 and 950 in Table 3 , the number of states in main module became too large to normally finish behavioral synthesis.. When the constraint is 230 in Table 2 , the area is slightly larger than that when the constraint is 220. A similar discrepancy is also seen in Table 3 . This is mainly due to the following reason. As described in Sect. 3, the proposed method determines the functions to be inlined and exlined/merged based on estimated datapath area in Eqs. (4) and (5) . Indeed, the estimated area at constraint 230 is slightly (approx. 400 gates) smaller than that at constraint 220. On the other hand, the area in Table 2 is the actual one after logic synthesis and place-and-route. Logic-level optimization often affects the area significantly, but that is not taken into account in our Eqs. (4) and (5) . This problem needs to be handled more carefully in future.. For simplicity, we assumed that no function except the main function calls other functions and there exists only a single sub module in addition to main module. In spite of these simplifications, however, it should be noted that our method outperforms the traditional techniques.

O O O O O B I B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I B I B I I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Repairing mip infeasibility through local branching Finding a feasible solution to a generic Mixed-Integer Program (MIP) is often a very difficult task. Recently, two heuristic approaches called Feasibility Pump and Local Branching have been proposed to address the problem of finding a feasible solution and improving it, respectively. In this paper we introduce and analyze computationally a hybrid algorithm that uses the feasibility pump method to provide, at very low computational cost, an initial (possibly infeasible) solution to the local branching procedure which can indeed work also with infeasible solutions. The overall procedure is reminiscent of Phase I of the two phase simplex algorithm, in which the original LP is augmented with artificial variables that make a known infeasible starting solution feasible and then the augmented model is solved to iteratively reduce that infeasibility by driving the values of the artificial variables to zero. As such, our approach can also to used to find (heuristically) a minimum-cardinality set of constraints whose removal converts an infeasible MIP into a feasible one-a very important piece of information in the analysis of infeasible MIP models. In this paper, we consider the problem of finding a feasible solution to a generic Mixed-Integer Program (MIP) with 0-1 variables of the form:. (2) Ax ≥ b, (3) x j ∈ {0, 1}, ∀j ∈ B = ∅, (4). where A is a m × n input matrix, and b and c are input vectors of dimension m and n, respectively. Here, the variable index set N := {1, . . . , n} is partitioned into (B, G, C), where B = ∅ is the index set of the 0-1 variables, while the possibly empty sets G and C index the general integer and the continuous variables, respectively. Note that we assume the existence of 0-1 variables, as one of the components of the method we actually implemented (namely, the local branching heuristic) is based on this assumption; our approach can however be extended to get rid off this limitation, as outlined in the concluding remarks of [9] . Also note that constraints (3), though stated as inequalities, can involve equalities as well. Let I := B ∪ G denote the index set of all integer-constrained variables. Heuristics for general-purpose MIPs include [3] , [4] , [5] , [7] , [11] , [13] , [14] , [15] , [16] , [17] , [19] , [20] , [21] , and [24] , among others. Recently, we proposed in [9] a heuristic approach, called Local Branching (LB), to improve the quality of a given feasible solution. This method, as well as other refining heuristics (including the recently-proposed RINS approach [7] ), requires the availability of a starting feasible solution, which is an issue for some difficult MIPs. This topic was investigated by Fischetti, Glover and Lodi [10] , who introduced the so-called Feasibility Pump (FP) scheme for finding a feasible (or, at least, an "almost feasible") solution to general MIPs through a clever sequence of roundings.. In the present paper, we analyze computationally a simple variant of the original LB method that allows one to deal with infeasible reference solutions, such as those returned by the FP method. Our approach is to start with an "almost feasible" reference solutionx, as available at small computational cost through the FP method. We then relax the MIP model by introducing for each violated constraint: (i) an artificial continuous variable in the constraint itself, (ii) a binary (also artificial) variable, and (iii) a constraint stating that, if the artificial variable has to be used to make the constraint satisfied, then the binary variable must be set to 1. Finally, the objective function is replaced, in the spirit of the first phase of the primal simplex algorithm, by the sum of the artificial binary variables. The initial solution turns out now to be feasible for the relaxed model and its value coincides with the number of initial violated constraints. We then apply the standard LB framework to reduce the value of the objective function, i.e., the number of infeasibilities and a solution of value 0 turns out to be feasible for the initial problem. Note that, although a continuous artificial variable for each violated constraint could be enough, binary variables are better exploited by LB as it will be clear from Section 2 and discussed in detail in Section 3.. Our approach also produces, as a byproduct, a small-cardinality set of constraints whose relaxation (removal) converts a given MIP into a feasible one-a very important piece of information in the analysis of infeasible MIPs. In other words, our method can be viewed as a tool for repairing infeasible MIP models, and not just as a heuristic for repairing infeasible MIP solutions. This is in the spirit of the widely-studied approaches to find maximum feasible (or minimum infeasible) subsystems of LP models, as addressed e.g. in [2, 6, 12] , but applies to MIP models-hence it may be quite useful in practice.. The paper is organized as follows. In Section 2 we review the LB and FP methods. In Section 3 we describe the LB extension we propose to deal with infeasible reference solutions. Computational results are presented in Section 4, where we compare the LB performance with that of the commercial software ILOG-Cplex on two sets of hard 0-1 MIPs, specifically 44 problems taken from MIPLIB 2003 library [1] and 39 additional instances already considered in [10] .

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Fast Arithmetics in Artin-Schreier Towers over Finite Fields An Artin-Schreier tower over the finite field Fp is a tower of field extensions generated by polynomials of the form X p − X − α. Following Cantor and Couveignes, we give algorithms with quasi-linear time complexity for arithmetic operations in such towers. As an application, we present an implementation of Couveignes' algorithm for computing isogenies between elliptic curves using the p-torsion.

O O O B O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O


Inconsistency-Tolerant Integrity Checking Abstract-All methods for efficient integrity checking require all integrity constraints to be totally satisfied, before any update is executed. However, a certain amount of inconsistency is the rule, rather than the exception in databases. In this paper, we close the gap between theory and practice of integrity checking, i.e., between the unrealistic theoretical requirement of total integrity and the practical need for inconsistency tolerance, which we define for integrity checking methods. We show that most of them can still be used to check whether updates preserve integrity, even if the current state is inconsistent. Inconsistency-tolerant integrity checking proves beneficial both for integrity preservation and query answering. Also, we show that it is useful for view updating, repairs, schema evolution, and other applications. I NTEGRITY constraints are statements declared in the database schema. They express semantic properties, meant to be invariably satisfied by the stored data across state changes.. For preserving the satisfaction of simple constraints like primary keys, foreign keys, or CHECK constraints, sufficient support is usually provided by the database management system (DBMS). For constraints that are not supported by the DBMS, the majority of scientific publications on the subject proposes to use some automated, applicationindependent method for integrity checking.. Each such method takes as input the set of constraints in the schema, an update consisting of two (possibly empty) sets of database elements to be inserted or, respectively, deleted, and possibly the current, also called "old" state of the database. The output of the methods indicates whether the "new" state, obtained from updating the old state, would satisfy or violate integrity.. In theory, each method requires the total integrity of the old state, i.e., no violation whatsoever is tolerated at any time. Total integrity, however, is the exception, rather than the rule in practice.. Integrity violation may sneak into a database in many ways. For instance, new constraints may be added without being checked for violations by legacy data. Or, integrity control may be turned off temporarily, e.g., when uploading a backup for which a total check would last too long. Or, integrity may deteriorate by migrating to the DBMS of a different vendor, since the semantics of integrity constructs tends to be proprietary. Or, integrity may be compromised by the integration of databases, when constraints that had held locally fail to hold after databases have been merged.. Other database applications where inconsistencies may occur are view updating, schema evolution, data mining and warehousing, diagnosis, replication, uncertain data, and many more.. Often, users consider efforts to completely repair all inconsistencies unnecessary, inopportune, unaffordable, or impossible. Violations of constraints may even be desirable, e.g., when constraints are used to detect irregularities, such as indications of security attacks, tax dodging. So, even though the standard logic foundations are intolerant wrt. inconsistency, there is a strong practical need for integrity checking methods that are able to tolerate extant cases of constraint violations.. For convenience, we abbreviate, from now on, inconsistency-tolerant integrity checking by ITIC.. Fortunately, no new methods for ITIC have to be invented. The main purpose of this paper is to show that the gap between theory and practice of integrity checking can be closed by already approved, time-tested methods. Contrary to common belief, these methods can waive the unrealistic requirement of total integrity satisfaction, without forfeiting their capacity to check integrity, even in the presence of inconsistency. Our approach to ITIC yields major quality improvements, both of data wrt. their intended semantics and of answers to queries.. The aims pursued in this paper are the following:. 1. To distinguish methods that are inconsistency-tolerant from those that are not. In this paper, we formalize the notion of ITIC. Before that, the behavior of methods for checking declaratively stated constraints in the presence of inconsistency has never been contemplated. Traditionally, integrity checking methods were not legitimized to be used in the presence of inconsistency, although many databases are not totally consistent. Now, inconsistency-tolerant methods can be soundly used in the presence of an arbitrary amount of inconsistency. Thus, the applicability of integrity checking methods is widened immensely. To the best of our knowledge, our definition is the first of its kind. 2. To bridge the gap between theory and practice of integrity checking by using inconsistency tolerance. The theoretical total-integrity requirement is a formidable desideratum in practice. Typically, practical approaches to deal with extant inconsistency are based on exception handling. They tend to have the character of workarounds or ad hoc solutions. Theoretical approaches to deal with extant inconsistency have been based on nonclassical logics, such as modal, many-valued or paraconsistent calculi. Our approach is based on classical logic and does not need any changes or adaptations of existing integrity checking methods. 3. To evaluate the effects of ITIC on database evolution and query answering. Ultimately, integrity checking is about preserving the semantics of data through updates and, consequently, obtaining query answers that can be trusted. Without total integrity, full trustability is lost. Yet, some databases may be less inconsistent than others, and thus better behaved wrt. query answering. In this paper, we propose a comprehensive set of experiments for observing the impact of ITIC on databases subject to evolution through updates. We report both on the number of constraint violations and on the number of incorrect answers to complex benchmark queries. We also compare our approach to consistent query answering [1] , which is an orthogonal technique for dealing with inconsistent data. 4. To describe several application contexts that may benefit from ITIC. The vision brought forward in this paper can be applied to various knowledge and data management problems. We show that ITIC naturally extends to view updates, database repairs, schema evolution, risk management, and unsatisfiability handling. Section 2 outlines the background. The main contributions are: to develop a concept of ITIC (Section 3), to show the inconsistency tolerance of known methods (Section 4), to outline several applications of ITIC (Section 5), and to validate the practical relevance of ITIC (Section 6). Related work is discussed in Section 7. In Section 8, we conclude. The purpose of integrity checking is to ensure that the satisfaction of each constraint is preserved across updates. Traditionally, the theory of efficient integrity checking stipulates total integrity, i.e., that all constraints be satisfied in each state, without exception. In practice, however, that is an almost utopian wish.. To overcome this gap between theory and practice, we have relaxed the total integrity premise by a new requirement that tolerates inconsistency. Essentially, it asks that only those cases of constraints, that are satisfied in the old state, remain satisfied in the new state, while any amount of extant violated cases can be tolerated. (Cases are obtained from constraints by instantiating 8-quantified variables that are not governed by 9-quantified ones. ) We have seen that many (though not all) existing integrity checking methods comply with this relaxation without penalty, i.e., no change or adaptation of methods that can be shown to be inconsistency-tolerant is necessary at all. For such methods, traditional integrity checking becomes merely a special border case of our inconsistencytolerant generalization.. The main benefits of inconsistency-tolerant integrity checking (ITIC), as identified in this paper, can be summarized as follows:. 1. The applicability of integrity checking methods is broadened significantly. ITIC allows updates to be fruitfully checked for integrity preservation even in the presence of inconsistency. 2. The application of ITIC tends to reduce the amount of inconsistency. In particular, ITIC guarantees that the number of violated basic cases cannot increase. Therefore, insertions cannot increase the percentage of inconsistency in the data either. 3. ITIC tends to improve the quality of answers to queries. Experimentally, we have shown that lower amounts of inconsistency obtained with ITIC typically result in lower amounts of false positives and negatives. 4. Procedural constructs for integrity maintenance can be avoided. Many applications do not comply with the demand of total integrity. Thus, instead of using methods for checking declarative constraints, application programmers often have resorted to less reliable procedural constructs, such as dynamic constraints, triggers, or stored procedures. The results of this paper now legitimize the use of methods for ITIC, since their output is reliable also in the presence of inconsistency. Future work includes further investigation of the interplay between the notion of inconsistency-tolerant repair, as introduced in Section 5.2, and CQA. Instead of referring to total repairs for answering a query, as CQA does, it should be sufficient to be content with partial repairs that tolerate inconsistencies that do not "interfere" with the query. This would also mean that CQA could even deal with unsatisfiable theories without trivializing query answers (by definition, every n-tuple is in the CQA answer to an n-ary query, if no repair exists).. Other pending work concerns inconsistency measures, as mentioned in Section 7. Acceptance of updates by an ITIC method depends on the measure in use, which, in this paper, is based on cases. Other measures may prove relevant for ITIC [10] . We also intend to investigate the capacity of inconsistency tolerance of abduction-based procedures, such as those described in [29] . Further, ongoing studies are concerned with ITIC for concurrent transactions and replicated databases.. To conclude, we believe that the notion of ITIC can be embraced by producers and vendors of DBMSs at no additional cost in most of the existing implementations. Thus, the problematic use of triggers and other nondeclarative constructs can be reduced in favor of ITIC, which is more useful and more reliable than methods that insist on total integrity. Davide Martinenghi received the MS degree in computer engineering from the Politecnico di Milano, Italy, in 1998, and the PhD degree (with a dissertation on integrity checking for deductive databases) in computer science from Roskilde University, Denmark, in 2005. He is currently an assistant professor at the Politecnico di Milano. His main research interests include data integrity maintenance, data integration, logic programming, knowledge representation, and, in a broad sense, applications of logic to databases. He is currently engaged in research on inconsistency tolerance in database systems as well as on query optimization aspects related to Web data access and Web search.. . For more information on this or any other computing topic, please visit our Digital Library at www.computer.org/publications/dlib. Various forms of exception handling for dealing with persistent inconsistencies as embodied by constraint violations have been proposed in [21] , [22] , [23] , and others. However, integrity checking is not addressed in any of those works.. Another approach to deal with inconsistencies is to repair them (cf. 5.2), which, despite recent advances [18] , [17] , is known to be intractable in general. Anyway, all approaches that either eliminate or work around inconsistencies (e.g., by repairing them or treating them as exceptions) need to know about extant integrity violations. As opposed to that, ITIC simply leaves inconsistencies alone. That works reliably, even if violated cases of constraints are unknown to the user or the application, as seen in Section 5.4.. To the best of our knowledge, the putatively fundamental role alleged to total integrity as an indispensable premise for simplified integrity checking has never been challenged. That may be due to the classical ex contradictione quodlibet rule, by which conclusions derived from inconsistency cannot be considered reliable. However, in Section 5.4, we have seen that, on the contrary, the use of inconsistency-tolerant methods is fully reliable.. On the other hand, it is astonishing that total integrity has always been insisted on, since many database contexts in practice suffer from some amount of inconsistency.. Nevertheless, interesting work has been going on in recent years under the banner of "inconsistency tolerance." A lot of it is concerned with consistent query answering in inconsistent databases (abbr. CQA) [1] , [16] , [19] . CQA defines answers to be correct if they are logical consequences of each reasonably repaired state of the database, i.e., each state that satisfies integrity and differs from the given violated state in some minimal way. CQA and ITIC have in common that they neither capitulate in the presence of inconsistency (as classical logic would), nor need to appeal to repairing violated constraints (as traditional query answering and integrity checking would). However, their main purposes are different, since CQA enables query answering, while ITIC enables updating, even when the database violates integrity. Yet, integrity checking (which can be seen as a special-purpose variant of query answering) has, to the best of our knowledge, never been addressed in detail by the CQA community. As was observed in Section 6, ITIC can be considered as largely complementary to CQA, since the former prevents new integrity violations to occur during updates but does not remove the effect that extant violations may have on query answers, which is precisely what the latter does.. Also, a variety of paraconsistent logic approaches that are tolerant and robust wrt. inconsistency have received some attention, e.g., [24] , [25] . Most of them, however, deviate significantly from the syntax and semantics of classical firstorder logic, while ITIC does not. Some paraconsistent approaches resort to modal or multivalued logic. As opposed to that, ours complies with conventional twovalued semantics of databases and integrity in the literature.. Yet, resolution-based query answering (by which each of the methods mentioned in this paper has been implemented) can be characterized as a procedural form of paraconsistent reasoning [26] . This is particularly noteworthy for proof procedures that use integrity constraints as candidate input clauses, such as those in [12] , [4] . Thus, the paraconsistency of logic programming naturally qualifies it as a paradigm for implementing inconsistency-tolerant approaches to database integrity.. Further relevant work on the management of inconsistencies in databases comes from the field of inconsistency measuring [27] .. Inconsistency measures are useful for updates and integrity checking, if one wants to accept an update only if the measure of inconsistency of the old state does not increase in the new state. That, however, is precisely accomplished by ITIC, as soon as the set of violated cases of an integrity theory is measured: that set cannot be increased by an update if the update is checked by an inconsistency-tolerant method. Also other measures, such as those proposed in [27] , should be useful for determining the increase or decrease of inconsistency across updates. Alternative ways to characterize ITIC, including definitions based on inconsistency measures, are described in [10] . There, different classes of integrity checking strategies are identified, studied, and compared wrt. their inconsistency tolerance capabilities.. This paper improves and extends [28] in several ways. New are the properties and conditions for completeness and weak completeness wrt. inconsistency tolerance. Also the application of ITIC to various database management problems in Section 5 is new. Another important addition of this paper is the validation of the practical relevance of ITIC in Section 6.

O B I O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Limits of Learning-Based Superresolution Algorithms Abstract Learning-based superresolution (SR) is a popular SR technique that uses application dependent priors to infer the missing details in low resolution images (LRIs). However, their performance still deteriorates quickly when the magnification factor is only moderately large. This leads us to an important problem: "Do limits of learning-based SR algorithms exist?" This paper is the first attempt to shed some light on this problem when the SR algorithms are designed for general natural images. We first define an expected risk for the SR algorithms that is based on the root mean squared error between the superresolved images and the ground truth images. Then utilizing the statistics of general natural images, we derive a closed form estimate of the lower bound of the expected risk. The lower bound only involves the covariance matrix and the mean vector of the high resolution images (HRIs) and hence can be computed by sampling real images. We also investigate the sufficient number of samples to guarantee an accurate estimate of the lower bound. By computing the curve of the lower bound w.r.t. the magnification factor, we could estimate the limits of learning-based SR algorithms, at which the lower bound of the expected risk exceeds a relatively large threshold. We perform experiments to validate our theory. And based on our observations we conjecture that the limits may be independent of the size of either the LRIs or the HRIs. Superresolution (SR) is a technique that produces an image or video with a resolution that is higher than those of any of the input images or frames. Roughly speaking, SR algorithms can be categorized into four classes (Borman and Stevenson 1998; Farsiu et al. 2004; Park et al. 2003) . Interpolation-based algorithms (e.g., Komatsu et al. 1993; Nguyen and Milanfar 2000; Shah and Zakhor 1999) register low resolution images (LRIs) with the high resolution image (HRI), then apply nonuniform interpolation to produce an improved resolution image which is further deblurred. Frequency-based algorithms (e.g., Kim and Su 1993; Rhee and Kang 1999; Tsai and Huang 1984) make use of the aliasing that exists in each LRI and try to dealias the LRIs by utilizing the phase difference among the LRIs. Reconstructionbased algorithms (e.g., Elad and Feuer 1997; Hardie et al. 1997; Lin and Shum 2004; Patti et al. 1997 ) rely on the registration relationship between the LRIs and the HRI to build a linear system that relates the LRIs and the HRI, and then assume various kinds of priors on the HRI in order to regularize this ill-posed inverse problem. Recently, many learning-based algorithms (LBAs) have attracted much attention. Learning-based SR algorithms are new SR techniques that may start from the seminal papers by Freeman and Pasztor (1999) and Baker and Kanade (2002) . Compared to traditional methods, which basically process images at the signal level, learning-based SR algorithms incorporate application dependent priors to infer the unknown HRI. For instance, a probabilistic model is often learned from a training set of image pairs, i.e., corresponding LRI and HRI images, and then the output HRI is inferred from the input LRIs based on that probabilistic model. Often, they can achieve better results if the training set agrees well with the statistics of the input LRIs.. Existing LBAs vary from generic to specific, incorporating different levels of prior knowledge. Among them, the algorithms in Freeman and Pasztor (1999) , Bégin and Ferrie (2004) , Bishop et al. (2003) , Candocia and Principe (1999) , Kursun and Favorov (2003) , Miravet and Rodríguez (2003) , Pickup et al. (2003) , Sun et al. (2003) , Zhang and Pan (2002) can be applied to general images or videos (Bishop et al. 2003) . As the image/video sizes are not fixed, all of them can only use patch-based approaches. In contrast, the algorithms in Baker and Kanade (2002) , Capel and Zisserman (2001) , Dedeoǧlu et al. (2004) , Lin (2004a, 2004b) , Liu et al. (2001 Liu et al. ( , 2005a Liu et al. ( , 2005b Liu et al. ( , 2005c are devoted to face hallucination only. They all utilize the strong structural information of faces by aligning the face images. Hence most of them use eigen-faces. Despite some drawbacks such as a fixed magnification factor and dependence of performance on how well the input LRI matches the training low resolution (LR) samples, LBAs have several advantages, which make them very popular nowadays. For example, they require fewer LRIs yet still achieve higher magnification factors than traditional SR algorithms, because they already have more specific prior knowledge of the image/video. Most of the algorithms can even work on a single image, which is impossible for traditional algorithms. Moreover, it is possible to design fast LBAs, e.g., eigen-face based face hallucination or neural network based SR algorithms, while traditional SR algorithms (except nonuniform interpolation Park et al. 2003) are usually iterative and slow, making real-time SR difficult. Finally, if we change the prior for LBAs, the HRIs may exhibit an artistic style (Freeman and Pasztor 1999; Pickup et al. 2003) . This may enable LBAs to perform style transfer. In contrast, traditional SR algorithms do not have such capability.. Although more specific prior knowledge, e.g., the strong structure of faces, has been incorporated in LBAs, people have found that the SR results are still unsatisfactory even though the magnification factors are still not very large. This poses an important question: "Do limits exist for learningbased superresolution?", i.e., "Does there exist an upper bound for magnification factors such that no SR algorithm can produce satisfactory results?" In this paper, we provide some theoretical analysis on the limits of LBAs for general natural images, which is the first work on this problem according to the best of our knowledge. In comparison, the counterpart analysis for reconstruction-based SR algorithms has been presented in Lin and Shum (2004) and Baker and Kanade (2002) . This paper has two major contributions:. 1. A closed form lower bound of the expected error between the superresolved and the ground truth images is proved. This formula only involves the covariance matrix and the mean of the prior distribution of HRIs. This lower bound is used to estimate the limits of LBAs. 2. A formula on the sufficient number of HRI samples is provided to ensure the accuracy of the sample-based computation of the lower bound.. Moreover, from our experiments, we have also observed that the limits may be independent of the sizes of both LRIs and HRIs. Currently, we limit our analysis to general natural images, i.e., the set of all natural images of given size, because the statistics of general natural images have been studied for a long time (Srivastava et al. 2003) and there have been some pertinent observations on their characteristics that are useful for our analysis. In particular, we will use the following two properties:. 1. The distribution of HRIs is not concentrated around several HRIs and the distribution of LRIs is not concentrated around several LRIs either. Noticing that general natural images cannot be classified into a small number of categories will justify this property. 2. Smoother LRIs have a higher probability than nonsmooth ones. This property is actually called the "smoothness prior" that is widely used for regularization, for instance, when performing reconstruction-based SR.. In contrast, for specific class of images, e.g., face or text images, there is no similar work on their statistics to the best of our knowledge. So currently we have to focus on the SR of general natural images. The rest of this paper is organized as follows. We first review the existing LBAs in Sect. 2. Then we formulate our problem and prove the lower bound of the expected risks of LBAs in Sect. 3. In Sect. 4, we investigate the problem of the sufficient number of samples needed for estimating the lower bound. Next, we present the experimental results in Sect. 5 and discuss the case of involving the noise in Sect. 6. Finally, we give the conclusions and future work in Sect. 7. This paper presents the first attempt to analyze the limits of learning-based SR algorithms. We have proven a closed form lower bound of the expected risk of SR algorithms. We also sample real images to estimate the lower bound. Finally, we prove the formula that gives the sufficient number of HRIs to be sampled in order to ensure the accuracy of the estimate.. We have also observed from experiments that the lower bound b(N, m) may be dependent on m only and the growth rate of b(N, m) may be (m − 1) 1/2 . These are important observations, implying that one may more conveniently compute with small sized images and at small magnification factors and then predict the limits. This would save much computation and memory. We hope to prove this conjecture in the future.. As no authoritative threshold T is currently available, our estimated limit (roughly 10 times) of learning-based SR algorithms for general natural images is not convincing enough. We are investigating how to propose an objective threshold and how to effectively sample the statistics of the noise in (17) to produce a tighter limit.. Also, we will investigate the limits of learning-based SR algorithms under more specific scenarios, e.g., for face hallucination and text SR. We expect that more specific prior knowledge of the HRI distribution will be required. Collecting Samples We crawled images from the web and collected 100,000+ images. They are of various kinds of scenes: cityscape, landscape, sports, portraits, etc. Therefore, our image library could be viewed as an i.i.d. sampling of general natural images. To sample mN × mN sized HRIs, we first convert each color image into a graylevel one, then decompose it into non-overlapping patches of size mN × mN with at least one pixel apart from each of them in order to ensure the mutual independence. So each patch can be regarded as a sample of HRIs of size mN × mN . Then we blindly run our program to estimate the covariance and the mean of the HRIs, where mN varies from 8 to 48 at a step size of 4. The number of samples is of the order of 10 6 to 10 8 . While one may argue that this number may not be sufficient to estimate p h (h), recall that our goal is not on es- Fig. 2(a) , where for each individual curve N is fixed.. We can see that for fixed N , b (1) N (m) seems to grow at the rate of (m − 1) 1/2 . The important implication from these observations is: we may estimate the limits of learning-based SR by trying relatively small sized images and small magnification factors, rather than trying large sized images and large magnification factors, which saves computation and memory without compromising the estimation accuracy. 4 In the 1D case, a cubic filter can be written as:. When a = −1, it is the cubic B-spline filter. The downsampling matrix for 2D images is the Kronecker product of the 1D downsampling matrices. However, one should be cautious that strictly speaking the D in (3) should be estimated from real cameras. Fortunately, we have found that our lower bound does not seem to be very sensitive to the choice of D. We have tried the bilinear filter, Gaussian filters (with the variance varying from 0.5 2 to 1.5 2 ) and bicubic filters (with the parameter a varying from −1 to 0.5, see (16)), and have found that the lower bounds are fairly close to each other. The curves in Figs. 2(a) -(e) testify to this observation. Moreover, what we have observed in the last paragraph is still true.. When training learning-based SR algorithms, one usually collects HRIs and downsamples them to LRIs. So it is also helpful to draw the curves by fixing mN instead. The same phenomenon mentioned above can also be observed (Fig. 2(f) ). And the curves of b

B O B B O O B B O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O