C A Castillo

J L Albasanz

D León

J Jordán

M Pallàs

A Camins

M Marti

M Martı

Castillo

Dr Mairena Martín López

Age-related expression of adenosine receptors in brain from the senescenceaccelerated mouse

Keywords: Senescence-accelerated mouse, adenosine receptors, aging

Introduction

Senescence-accelerated prone mouse strains (SAMP) and resistant strains (SAMR) were established by Takeda and colleagues at Kyoto University by selective breeding from their AKR/J colony in the early 1970s [START_REF] Takeda | A novel murine model of accelerated senescence[END_REF]. Prone strains of SAM (SAMP8) show shortened life span and early manifestation of senescence with characteristic pathological phenotypes similar to those often observed in elderly humans. These include senile osteoporosis, osteoarthritis, age-related deficits in learning and memory with/without forebrain atrophy, senile amyloidosis, et al. SAMR1 are strains of accelerated senescence-resistant, long-lived mice. The mean life span in the P series is about 9.7 months, 40% shorter than that of the R series (16.3 months).

Senescence accelerated mouse prone strain SAMP8 is one of the most appropriate models to study aging and age-associated diseases because it shows an age-related deterioration of learning and memory at an earlier age, compared with the control mouse R1 strain in senescence-accelerated resistant mouse (SAMR1) [START_REF] Miyamoto | Age-related changes in learning and memory in the senescence-accelerated mouse (SAM)[END_REF][START_REF] Miyamoto | Characteristics of age-related behavioral changes in senescenceaccelerated mouse SAMP8 and SAMP10[END_REF][START_REF] Nomura | Age-related defects in lifespan and learning ability in SAMP8 mice[END_REF]Butterfield and Poom, 2005).

Alteration of learning and memory of SAMP8 have been associated with a decline in neurotransmitter activity as well as decreased serotonin, increased GABA and decreased cholinergic activity (Morley et al., 2002b). In addition, cognitive defect in these animals can be due to overproduction of -amyloid peptide (AP) being reversed by specific antibodies to -amyloid. Furthermore, SAMP8 mice present lower mRNA levels of apolipoprotein E and increased levels of presenilin-2 when compared to SAMR1 [START_REF] Wei | Alzheimer's disease-related gene expression in the brain of senescence accelerated mouse[END_REF]. Therefore, these animals have been suggested as a good model for the study of Alzheimer's disease [START_REF] Morley | The SAMP8 mouse: a model of Alzheimer disease?[END_REF]Morley et al., 2002a;[START_REF] Banks | Anti-amyloid beta protein antibody passage across the blood-brain barrier in the SAMP8 mouse model of Alzheimer's disease: an age-related selective uptake with reversal of learning impairment[END_REF][START_REF] Pallas | From aging to Alzheimer's disease: unveiling "the switch" with the senescence-accelerated mouse model (SAMP8)[END_REF]. SAMP8 mice also present other characteristics that contribute to their pathological phenotype. SAMP8 mice present a lower expression of neurotrophic genes as glial cell derived neurotrophic factor (GDNF) [START_REF] Miyazaki | Age-related alterations in the expression of glial cell line-derived neurotrophic factor in the senescence-accelerated mouse brain[END_REF], neurotrophin-3 (NT-3) and nerve growth factor (NGF) [START_REF] Kaisho | Expression of neurotrophin genes in the brain of senescence-accelerated mouse (SAM) during postnatal development[END_REF]. Furthermore, the expression of proteins involved in reactive oxygen species (ROS) metabolism is altered in SAMP8 mice, which may be involved in the increased oxidative stress found in SAMP8 mouse brain. Compared to SAMR1 mice, the activity of enzymes involved in antioxidant processes are decreased in the cerebral cortex of aged SAMP8. This has been reported for manganese superoxide dismutase (Mn-SOD), glutamine synthase (GS), glutathione peroxidase (GPx) and peroxidase activities [START_REF] Kurokawa | Age-related changes in manganese superoxide dismutase activity in the cerebral cortex of senescence-accelerated prone and resistant mouse[END_REF][START_REF] Sato | Early and transient increase in oxidative stress in the cerebral cortex of senescence-accelerated mouse[END_REF][START_REF] Okatani | Melatonin reduces oxidative damage of neural lipids and proteins in senescence-accelerated mouse[END_REF]. Moreover, other enzymes which contribute to ROS generation, such as nitric oxide synthase (NOS), are increased in aged SAMP8 mice [START_REF] Inada | Age-related increase in nitric oxide synthase activity in senescence accelerated mouse brain and the effect of long-term administration of superoxide radical scavenger[END_REF].

Adenosine is a nucleoside widely distributed in central and peripheral nervous system that exerts its actions through four types of receptors named A 1 , A 2A , A 2B and A 3 , all of them being G-protein coupled receptors (GPCR). A 1 and A 3 receptors are coupled, through Gi/o proteins, to adenylyl cyclase activity inhibition, while A 2A and A 2B receptors are coupled to stimulation of the enzymatic activity, through Gs protein [START_REF] Ralevic | Receptors for purines and pyrimidines[END_REF]Burnstock, 1998, Fredholm et al., 2001;[START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF]. Out of the four adenosine receptors, the A 1 subtype is the most abundant and widespread in the brain, where it plays a neuroprotective role because of its capacity to decrease the release of excitatory neurotransmitters, mainly glutamate [START_REF] Dunwiddie | The role and regulation of adenosine in the central nervous system[END_REF]. A 2A receptors are concentrated in the basal ganglia but they are also present throughout the brain, albeit in a considerably lower density. A 2B and A 3 receptors are the least abundant in the brain [START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF].

Changes in adenosine receptors during aging have been demonstrated in several animals [START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF] and in humans [START_REF] Meyer | Effect of aging on cerebral A1 adenosine receptors: A [18F]CPFPX PET study in humans[END_REF]. Decreased expression and density of A 1 in the cortical and hippocampal regions has been observed [START_REF] Cheng | Decrease of adenosine A-1 receptor gene expression in cerebral cortex of aged rats[END_REF][START_REF] Cunha | Modification of A1 and A2a adenosine receptor binding in aged striatum, hippocampus and cortex of the rat[END_REF]Cunha et al., , 2001a, b;, b;Paganopoulou et al., 1992) whereas the density of A 2A receptors increases with age [START_REF] Cunha | Modification of A1 and A2a adenosine receptor binding in aged striatum, hippocampus and cortex of the rat[END_REF][START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF][START_REF] Lopes | Cross talk between A(1) and A(2A) adenosine receptors in the hippocampus and cortex of young adult and old rats[END_REF].

However, these age-related changes in adenosine receptor levels observed in some brain areas have not been detected in the striatum, where these levels might be only slightly affected by ageing [START_REF] Cunha | Modification of A1 and A2a adenosine receptor binding in aged striatum, hippocampus and cortex of the rat[END_REF]. Beyond this, adenosine receptors have not been analyzed in SAM strains until now. The SAMP8 mouse has been proposed as an excellent model for studying the pathogenesis of learning and memory disturbances associated with AP overproduction. The identification of senile plaques and the increased expression of AP in this mouse model suggest it may be an acceptable model for Alzheimer's disease [START_REF] Morley | The SAMP8 mouse: a model of Alzheimer disease?[END_REF][START_REF] Morley | Alzheimer's disease through the eye of a mouse. Acceptance lecture for the 2001 Gayle A[END_REF][START_REF] Banks | Anti-amyloid beta protein antibody passage across the blood-brain barrier in the SAMP8 mouse model of Alzheimer's disease: an age-related selective uptake with reversal of learning impairment[END_REF][START_REF] Pallas | From aging to Alzheimer's disease: unveiling "the switch" with the senescence-accelerated mouse model (SAMP8)[END_REF]. We have previously reported that adenosine A 1 and A 2A receptors are altered in frontal cortex brain from AD patients [START_REF] Albasanz | Up-regulation of adenosine receptors in the frontal cortex in Alzheimer's disease[END_REF]. The aim of the present work was to determine the expression of different adenosine receptors, mainly A 1 and A 2A , and their possible age-related changes in brains from SAMR1 and SAMP8 strains, in order to use these animals as models to study the mechanism involved in the neuropathogenesis of Alzheimer's disease.

Materials and Methods

Materials

Cyclopentyl-1,3-dypropylxanthine,8-[dipropy-2,3-3 H(N) ( 3 HDPCPX) 120 Ci/ mmol) and adenosine 3', 5'-cyclic phosphate [2,8-3 H] ( 3 HcAMP) 27.4 Ci/ mmol) were purchased from PerkinElmer (Madrid, Spain). Anti-A 1 antibody was purchased from Calbiochem (Bionova, Madrid, Spain), anti-A 2A antibody from Upstate (Millipore, Madrid, Spain) and anti-β-actin from Abcam (Cambridge, UK). Guanosine-5'-O(3thiotriphosphate) tetralithium salt (GTPS) and calf intestine adenosine deaminase (ADA) were purchased from Roche (Barcelona, Spain). Creatine kinase, Creatine phosphate, Protein kinase A, 4-(3-butoxy-4-methoxybenzyl)imidazolidin-2-one (Ro 20-1724), Forskolin, N 6 -cyclopentyladenosine (CPA), N 6 -cyclohexyladenosine (CHA), Adenosine 5′-triphosphate (ATP) and Guanosine 5′-[β,γ-imido]triphosphate (Gpp(NH)p) were from Sigma (Madrid, Spain). All other reagents were of analytical grade and obtained from commercial sources.

Animals

Young (21 days old) and middle-aged (180 days old) SAMR1 and SAMP8 mice or young male (3 months) and aged male (24 months) Wistar rats were kept at constant temperature (25 ± 1 °C) and humidity, maintained on a 12 h light/12 h dark cycle with ad libitum access to rodent food and water. All experiments followed the European Union regulations about animal experimentation and those of the Experimentation Animal Committee of the Castilla-La Mancha University. Special care was taken to minimize animal suffering and to reduce the number of animals used.

Plasma membrane isolation

Plasma membranes from mouse and rat brain were isolated as described previously [START_REF] León | Adenosine A1 receptor down-regulation in mothers and fetal brain after caffeine and theophylline treatments to pregnant rats[END_REF]. Samples were homogenized in 20 volumes of isolation buffer (50 mM Tris-HCl, pH 7.4 containing 10 mM MgCl 2 and protease inhibitors) in Dounce homogenizer (10xA, 10xB). After homogenization, whole brain preparations (excluding cerebellum and spinal cord) were centrifuged for 5 min at 1000 x g in a Beckman JA 21 centrifuge. Supernatant was centrifuged for 20 min at 27000 x g and the pellet was finally resuspended in isolation buffer.

[ 3 H]DPCPX binding assays to plasma membranes

Binding assays to plasma membranes from mouse and rat brain were performed as described previously [START_REF] León | Adenosine A1 receptor down-regulation in mothers and fetal brain after caffeine and theophylline treatments to pregnant rats[END_REF]. Plasma membranes were incubated with 5 U/mg adenosine deaminase (ADA) in 50 mM Tris, 2 mM MgCl 2 , pH 7.4, for 30 min at 25ºC, in order to eliminate endogenous adenosine from membrane preparations. Then, plasma membranes (50-75 g of protein) were incubated with [ 3 H]DPCPX for 2 h at 25ºC. Saturation assays were carried out at different [ 3 H]DPCPX concentrations (0.1-20 nM) using CPA at a concentration 10 5 times higher than the radioligand, in order to obtain non-specific binding. Binding assays were stopped by rapid filtration through Whatman GF/B filters, previously pre-incubated with 0.3% polyethylenimine using a FilterMate Harvester (Perkin-Elmer). Scintillation liquid mixture was added in order to measure radioactivity in a Microbeta Trilux (Perkin Elmer) liquid scintillation counter.

When the effect of Gpp(NH)p was studied [ 3 H]DPCPX binding assays were performed at saturation concentration using the same methodology with minor modifications. Briefly, the buffer employed was 50 mM Tris, pH 7.4, containing 10 µM Gpp(NH)p, and the final concentration of [ 3 H]DPCPX used was 20 nM.

Western blot assays

For Western blot assays, 50 g of protein was mixed with loading buffer containing 0.125 M Tris (pH 6.8), 20% glycerol, 10% -mercaptoethanol, 4% SDS and 0.002% bromophenol blue, and heated at 95ºC for 5 min. Protein was electrophoresed on a 10% SDS-PAGE gel using a mini-protean system (Bio-Rad) with molecular weight standards (Bio-Rad). Protein transfer to nitrocellulose membranes was carried out in iBlot™ Dry Blotting System (Invitrogen). Membranes were washed with PBS-tween-20, blocked with PBS containing 5% skimmed milk, and then incubated with the primary antibodies at 4ºC overnight (1:1000 dilution for anti-A 1 R, 1:500 dilution for anti-A 2A R and 1:5000 dilution for anti-β-actin). After rinsing, the membranes were incubated with the corresponding secondary antibody (Bio-Rad) at a dilution of 1:5000 in PBS containing 5% skimmed milk for 30 minutes. Antigen was visualized using the ECL chemiluminescence detection kit (Amersham), and specific bands were quantified by densitometry using Multianalyst 1.0 software (Bio-Rad). Membranes were stripped for a second probe by incubating with 0.15% glycine, 0.1% SDS, and 1% tween-20, pH 2.2, for 30 minutes at room temperature. After removing the stripping buffer and washing them twice with PBS, membranes were ready for the blocking stage.

Preparation of Total RNA and cDNA

Total RNA was extracted from whole brain (excluding cerebellum and spinal cord) using an ABI 6100 Nucleic Acid PrepStation according to the manufacturer's protocol. All chemicals for the ABI 6100 were purchased from Applied Biosystems (Foster City, CA). Total RNA from mice was isolated and stored individually at -80°C.

Ratio of A 260 /A 280 (purity of RNA) was in the range 1.9-2.1. RNA concentrations were determined from the A 260 . One microgram of total RNA was reverse transcribed using Applied Biosystems High-Capacity cDNA Archive Kit.

Quantitative Real Time RT-PCR Analysis

Quantitative real time RT-PCR analysis [START_REF] Higuchi | Kinetic PCR analysis: real-time monitoring of DNA amplification reactions[END_REF] was performed with an Applied Biosystems Prism 7500 Fast Sequence Detection System using TaqMan® universal PCR master mix according to the manufacturer's specifications (Applied Biosystems Inc., Foster City, CA). The validated TaqMan probes and primers for A 1 (assay ID: Rn00567668_m1), A 2A (assay ID: Rn00583935_m1), A 2B (assay ID: Rn00567697_m1), A 3 (assay ID: Rn00563680_m1) and -actin (Rn00667869_m1) were assay-on-demand gene expression products (Applied Biosystems). The TaqMan® primer and probe sequences are packaged together in a 20x solution. Rat -actin gene was used as endogenous control. The thermal cycler conditions were as follows: hold for 20 s at 95 °C, followed by two-step PCR for 40 cycles of 95 °C for 3 s, followed by 60 °C for 30 s. Levels of RNA expression were determined using the 7500 Fast System SDS software version 1.3.1 (Applied Biosystems) according to the 2 -ΔΔCt method.

Briefly, expression results for a gene were normalized to internal control -actin relative to a calibrator, consisting of the mean expression level of the corresponding gene in control samples as follows: 2 -ΔΔCt = 2 -((Ct receptor gene -Ct actin)sample -(Ct receptor gene -Ct actin) calibrator)

. The results from three independent repeat assays, performed on different plates each using different cDNAs from the animals analyzed, were averaged to produce a single mean quantity value for each mRNA for each animal.

Adenylyl cyclase activity determination

Adenylyl cyclase activity was determined in brain plasma membranes as previously described (León et al., 2005). Assays were performed with 10-20 µg of protein in a final volume of 0.25 mL of 50 mM Tris-HCl pH 7.4, 5 mM MgCl 2 , 1 mM 1,4-Dithiothreitol, 1 mg/mL bovine serum albumin, 1 mg/mL creatine kinase, 10 mM creatine phosphate, and 0.1 mM Ro 20-1724 (a specific phosphodiesterase inhibitor).

Plasma membranes, previously incubated with adenosine deaminase (0.2 U/mg protein) at 37ºC for 30 min to remove endogenous adenosine, were incubated for 6 min at 30ºC in the absence or presence of 5 µM GTPS, 10 µM forskolin, or 1 mM CHA, followed by a further incubation with 200 µM ATP at 30ºC for 10 min. Reaction was stopped by the boiling of samples and then centrifugation at 12000 x g for 4 min. Fifty microliters of supernatant were used to determine cAMP accumulation. Samples were incubated with 0.25 pmol of [ 3 H]cAMP and 6.25 µg protein kinase A in a final volume of 200 µL of buffer assay (Tris-HCl 50 mM, pH 7.4, EDTA 4 mM) for 2 h at 4ºC. Standard samples were prepared in the same buffer in the range of concentration of 0-16 pmol.

Reaction was stopped by the addition of 100 µL of active charcoal solution containing bovine serum albumin and then centrifugation of the samples at 12000 x g for 4 min.

Radioactivity was measured in a Microbeta Trilux (Perkin Elmer) liquid scintillation counter.

Protein determination

Protein concentration was measured by the method of [START_REF] Lowry | Protein measurement with the Folin phenol reagent[END_REF], using bovine serum albumin as standard.

Statistical and data analysis

Data are mean ± SEM. Statistical analysis was performed using Student t-test.

Differences between mean values were considered statistically significant at p<0.05.

Non-linear regression curve fit (one site binding hyperbola) was performed for binding data using the GraphPad Prism 5.0 program for Windows (GraphPad Software, San Diego, CA, USA).

Results

Expression of genes coding adenosine receptor types in SAMR1 and SAMP8 mice

To determine the age-related changes in expression of gene coding adenosine receptors in SAMP8 and SAMR1 mice, we isolated total RNA from both strains and performed quantitative real time PCR using selective oligonucleotides to adenosine A 1 , A 2A , A 2B and A 3 adenosine receptors. The ages of animals were three weeks (21d) and six months (180d). Results show that mRNA coding adenosine A 1 receptors are significantly increased in middle-aged versus young SAMR1 animals, suggesting an age-associated up-regulation in resistant control mice. However, the level of A 1 mRNA in young and middle-aged SAMP8 animals was not significantly different-of the same order as that obtained in young SAMR1 (Figure 1, panel A). Similar results were obtained for A 2B receptors whose level was increased in middle-aged versus young resistant mice but was not altered in SAMP8 (Figure 1, panel D). Concerning A 2A receptors, no significant differences were obtained between young and middle-aged animals, either in SAMP8 or in SAMR1. However, the level of A 2A mRNA expression was significant lower in SAMP8 versus SAMR1 (Figure 1 panel C). Finally, an increase in mRNA coding A 3 receptor was observed in both middle-aged SAMR1 and SAMP8 animals without significant differences between strains (Figure 1, panel B).

Adenosine A 1 receptor in SAMR1 and SAMP8 mice

Adenosine A 1 receptors are widely distributed in the brain and they are involved in neuroprotection. We measured adenosine A 1 receptors in plasma membranes from SAMR1 and SAMP8 mice by binding assay using [ 3 H]DPCPX, a selective A 1 receptor antagonist, as radioligand. In all cases assayed saturation curves were better fitted to one binding site model. Results from saturation curves showed a significant decrease in total adenosine A 1 receptor numbers in middle-aged SAMR1 (38%), suggesting a loss of receptors associated with aging (Figure 2, panels A and C). This decrease was not observed in the SAMP8 strain (Figure 2, panels B and C). However, the total adenosine A 1 receptor number in SAMP8 was significantly lower than in SAMR1, with even fewer receptors detected than in middle-aged SAMR1 mice, suggesting that A 1 receptors are already altered at a very early age in SAMP8. No significant ageassociated differences in Kd values were observed in any SAM strain. However, Kd values in SAMP8 strain were lower than in SAMR1, suggesting a higher receptor affinity in the former (Figure 2, panel D).

Due to the discrepancy observed in data obtained by real time PCR and by radioligand binding assays in these samples, additional binding assays were carried out in the presence of Gpp(NH)p, a non-hydrolizable GTP analogue, to rule out possible [ 3 H]DPCPX activity as an inverse agonist [START_REF] Finlayson | Comparison of effects of MgCl2 and Gpp(NH)p on antagonist and agonist radioligand binding to adenosine A1 receptors[END_REF]. Results obtained (Figure 3) showed a significant decrease in [ 3 H]DPCPX binding in middle-aged SAMR1, young SAMP8 and middle-aged SAMP8 as compared to [ 3 H]DPCPX binding levels in young SAMR1 strain. These results correlate with binding data obtained in the absence of Gpp(NH)p and confirm [ 3 H]DPCPX as a selective antagonist.

To measure adenosine A 2A receptors, Western blot experiments were performed with membranes from SAM animals. Results showed a significant age-related increase in the level of A 2A receptors in SAMR1, while no significant difference was observed in SAMP8 related to age. Moreover, levels of A 2A receptors observed in both young and middle-aged SAMP8 were of the same order as those obtained from young SAMR1 (Figure 4). In addition, to confirm the variation of A 1 receptors detected by radioligand binding assay, Western blot experiments were also performed using anti-A 1 receptor antibody. Results show an aged-associated loss of adenosine A 1 receptors in SAMR1 mice (Figure 5). In addition, the level of A 1 receptors in very young SAMP8 mice was of the same order as that observed in middle-aged SAMR1 animals, confirming results obtained by saturation binding assays.

Adenosine A 1 receptors/AC activity in Wistar rats

To compare and confirm the effect of aging on adenosine A 1 receptor levels we also analyzed the status of these receptors in brain from Wistar rats. Two groups of animals were used, young (3 months) and old (24 months) male rats. Saturation curves obtained by radioligand binding assays showed a significant decrease in adenosine A 1 receptors in brain from old versus young rats (49.3% of young rats) without significant variation in receptor affinity (Figure 6).

To evaluate whether age-related variation in adenosine receptors from Wistar rats modulates the transduction pathway mediated by these receptors, we analyzed the status of adenylyl cyclase activity in young and old rats. Results show that basal and forskolin or forskolin plus GTPS-stimulated adenylyl cyclase activity were significantly lower in old than in young animals (Figure 7, panel A). Moreover, the ability of CHA, a selective A 1 receptor agonist, to inhibit this enzymatic activity, was also decreased, suggesting a desensitization of the response system associated with the loss of receptors in the plasma membrane (Figure 7, panel B).

Discussion

To our knowledge, this study is the first to deal with the expression of mRNA coding different adenosine receptors and to quantify adenosine A 1 and A 2A receptors in brain from SAMR1 and SAMP8 mice. Results presented herein show an age-related loss of adenosine A 1 receptors in SAMR1, associated with an increase in the rate of synthesis of this receptor, probably as a compensatory mechanism to prevent the important loss of receptor detected at the membrane surface. In contrast, an age-related increase in adenosine A 2A receptors was observed in SAMR1 with no variation in SAMP8. However, the most important finding in our study is that adenosine A 1 receptors, which have been described as being neuroprotective, are already severely decreased in very young SAMP8 mice (three weeks old) suggesting a great alteration of these receptors in this aging model.

Morphological changes in the aging brain have been described and they depend on the species, the strains and the ages included in the study, as well as on individual differences. Changes in A 1 and A 2A receptors and their function during aging have been demonstrated, with A 1 being decreased and A 2A increased, respectively [START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF][START_REF] Rodrigues | Modification of adenosine modulation of acetylcholine release in the hippocampus of aged rats[END_REF]. In spite of the lack of anatomical resolution in our study, our findings of age-related changes in A 1 receptors in normal aging mice (SAMR1) are consistent with previously published data. Age-related changes in adenosine A 1 receptor binding have been described in mouse brain using the selective agonist CHA. In the cortex, hippocampus, and cerebellum of aged mice (28 months old), a significant decrease of about 44%, 50% and 12%, respectively, was observed in CHA binding compared to young animals (3 months old), without changes in Kd values and not dependant on a general cell degeneration in old age [START_REF] Pagonopoulou | Reduction of A1 adenosine receptors in cortex, hippocampus and cerebellum in ageing mouse brain[END_REF]. Also in mice, there has been confirmed to be widespread age-related loss of A 1 receptors in various cortical and subcortical structures involved in the neuromodulatory role of adenosine [START_REF] Ekonomou | Age-dependent changes in adenosine A1 receptor and uptake site binding in the mouse brain: an autoradiographic study[END_REF].

The methodology employed to quantify A1 receptors in SAM mice was validated by our results in male Wistar rats, which agree with those published by Cunha and co-workers in which the density of A 1 binding sites in aged rats (24 months) was reduced by 42% in whole brain membranes (Cunha et al., 2001b) by 33% in the hippocampus, and by 60% in the cortex, when compared with young adult rats (6 weeks), with no changes in Kd [START_REF] Cunha | Modification of A1 and A2a adenosine receptor binding in aged striatum, hippocampus and cortex of the rat[END_REF]. A significant decrease in DPCPX binding to hippocampal membranes of aged versus young rats has also been observed [START_REF] Sperlágh | Age-dependent changes of presynaptic neuromodulation via A1-adenosine receptors in rat hippocampal slices[END_REF]. By immunoblotting analysis there was shown to be an agerelated decrease in A 1 receptor in cerebral cortex from Wistar rats. Compared to preparations from 2-month-old animals, the levels of A 1 in 6, 12 and 24-month-old rats were reduced by 14, 32 and 28% respectively [START_REF] Cheng | Decrease of adenosine A-1 receptor gene expression in cerebral cortex of aged rats[END_REF]. In addition, the pattern of binding of the A 1 receptor antagonist [ 3 H]DPCPX decreased with aging in membranes from whole brain of male Wistar rats while Kd values were not different among age groups (Cunha et al., 2001b).

Loss of A 1 receptors in plasma membrane has been associated with a downregulation of adenosine receptor by ligand overexposure. Down-regulation and desensitization of adenosine A 1 receptors in vivo has been suggested as being induced by high adenosine levels [START_REF] León | Adenosine A1 receptor down-regulation in mothers and fetal brain after caffeine and theophylline treatments to pregnant rats[END_REF][START_REF] León | Down-regulation of rat brain adenosine A1 receptors at the end of pregnancy[END_REF][START_REF] Cunha | Neuroprotection by adenosine in the brain: From A 1 receptor activation to A 2A receptor blockade[END_REF] and it comprises the classical GPCR response when exposed chronically to agonist [START_REF] Hanyaloglu | Regulation of GPCRs by endocytic membrane trafficking and its potential implications[END_REF]. In agreement, upon chronic noxious brain conditions, and also upon aging, adenosine modulation is modified, with increased levels of adenosine, which modifies the density of adenosine receptors [START_REF] Lopes | Cross talk between A(1) and A(2A) adenosine receptors in the hippocampus and cortex of young adult and old rats[END_REF]reviewed in Cunha, 2005). Previous studies have shown that endogenous extracellular adenosine levels are larger in hippocampal preparations (Cunha et al., 2001a) and basal forebrain [START_REF] Murillo-Rodriguez | The diurnal rhythm of adenosine levels in the basal forebrain of young and old rats[END_REF] from aged compared to young adult rats. This increase could be related to increased activity of 5´-nucleotidases with age (Cunha et al., 2001a;[START_REF] Mackiewicz | Pack AI. Age-related changes in adenosine metabolic enzymes in sleep/wake regulatory areas of the brain[END_REF], which transforms ATP released into adenosine at the synaptic level [START_REF] Zimmermann | Biochemistry, localization and functional roles of ecto-nucleotidases in the nervous system[END_REF][START_REF] Cunha | Adenosine as a neuromodulator and as a homeostatic regulator in the nervous system: different roles, different sources and different receptors[END_REF]. Other authors lend support to the idea that adenosine is released as such, with only a minor contribution of extracellular ATPderived adenosine [START_REF] Pedata | Investigations into the adenosine outflow from hippocampal slices evoked by ischemia-like conditions[END_REF], and the existence of non-concentrative bidirectional adenosine transporters allows balancing of changes in the intracellular and extracellular adenosine concentrations [START_REF] Plagemann | Nucleoside transport in cultured mammalian cells. Multiple forms with different sensitivity to inhibition by nitrobenzylthioinosine or hypoxanthine[END_REF]. It has been described that the greater levels of extracellular adenosine in aged animals cause a greater tonic A 1 -mediated inhibition [START_REF] Sebastião | Modification of adenosine modulation of synaptic transmission in the hippocampus of aged rats[END_REF]. Moreover, during aging, the level of adenosine in the extracellular fluid is increased in the hippocampus, associated with a down-regulation and reduced responsiveness of presynaptic adenosine A 1 receptors (Spelágh et al., 1997). Further, in previous studies we have shown that adenosine release during hypoxic conditions is responsible for adenosine A 1 receptor down-regulation and adenosine A 2A receptor up-regulation in C6 cells [START_REF] Castillo | Modulation of adenosine A(1) and A(2A) receptors in C6 glioma cells during hypoxia: involvement of endogenous adenosine[END_REF]. Therefore, we hypothesize that the age-related adenosine level increase could be responsible for the down-regulation of A 1 receptors in SAMR1 mice.

A significant decrease in the A 1 mRNA level was obtained using Northern blotting analysis, associated with age in male Wistar rats, probably due to a decrease in transcription of the receptor gene and/or decrease in the stability of mRNA [START_REF] Cheng | Decrease of adenosine A-1 receptor gene expression in cerebral cortex of aged rats[END_REF]. This result contrasts with the significant increase in mRNA level coding A 1 receptor we detected by quantitative real time PCR in old SAMR1 animals, probably as a compensatory mechanism for the loss of the adenosine A 1 receptor detected at the membrane surface. This compensatory mechanism is absent in old SAMP8 mice, in agreement with the non-variation in A 1 associated with aging.

SAMP8 have been proposed as a model for Alzheimer disease (AD). It has been demonstrated that SAMP8 mice overproduce -amyloid in the hippocampus, and late in life they develop amyloid plaques [START_REF] Morley | Beta-amyloid precursor polypeptide in SAMP8 mice affects learning and memory[END_REF]. This is associated with an increase in mRNA for the Amyloid Precursor Protein (APP). In addition, it has been postulated that aged SAMP8 mice have higher levels of AP [START_REF] Banks | Anti-amyloid beta protein antibody passage across the blood-brain barrier in the SAMP8 mouse model of Alzheimer's disease: an age-related selective uptake with reversal of learning impairment[END_REF]. The 12-month-old SAMP8 mouse has APP and AP levels that are about twice those of the 4-month-old SAMP8, and it has developed severe learning and memory problems [START_REF] Kumar | Identification of age-dependent changes in expression of senescence-accelerated mouse (SAMP8) hippocampal proteins by expression array analysis[END_REF][START_REF] Morley | Beta-amyloid precursor polypeptide in SAMP8 mice affects learning and memory[END_REF], which can be reversed by treatment with either antibody or antisense directed against AP [START_REF] Kumar | Identification of age-dependent changes in expression of senescence-accelerated mouse (SAMP8) hippocampal proteins by expression array analysis[END_REF]Morley et al., 2002a). Thus, the SAMP8 strain represents a model of age-related and AP-dependent cognitive decline.

Loss of adenosine receptors in SAMP8 mice observed in the present study could be associated with the increased AP level detected in these animals, which is thereafter related to degeneration characteristics of AD. However, there is no evidence supporting increased AP levels in SAMP8 as young as three weeks old, at which time point we observed an important loss of adenosine A 1 receptors. In addition, results obtained previously by our group in frontal cortex brain from AD patients show a significant increase in adenosine A 1 receptors already in early stages of the disease and then maintained with the progression of neurodegeneration [START_REF] Albasanz | Up-regulation of adenosine receptors in the frontal cortex in Alzheimer's disease[END_REF].

Moreover, up-regulation of A 1 receptors has also been observed in brain from patients with other dementias such as Pick disease or argyrophilic grain disease, in which there is no significant AP accumulation [START_REF] Albasanz | Up-regulation of adenosine A 1 receptors in frontal cortex from Pick's disease cases[END_REF][START_REF] Perez-Buira | Expression levels of adenosine receptors in hippocampus and frontal cortex in argyrophilic grain disease[END_REF]. Therefore, variation in adenosine receptors seems not to be specific for neurodegenerative diseases associated with AP accumulation. In other words, amyloid seems not to be responsible for variation in A 1 receptors. As postulated above, an increase in endogenous adenosine level could be responsible for the lower adenosine A 1 receptors observed in SAMP8 versus young SAMR1 animals. In agreement, the increase in adenosine receptors in human brain from AD patients has been related with the lower endogenous adenosine level, as detected in plasma (Selly, 2004). Moreover, adenosine and pharmaceutical agents that raise the extracellular adenosine concentration have been suggested as reinforcements to conventional treatment with acetylcholinesterase inhibitors in AD [START_REF] Ferroni | Recovery of deficient cholinergic calcium signaling by adenosine in cultured rat cortical astrocytes[END_REF][START_REF] Schubert | Glia-related pathomechanisms in Alzheimer's disease: a therapeutic target?[END_REF]. Furthermore, A 2A receptor blockade is also nowadays considered a promising target in AD treatment [START_REF] Dall'igna | Caffeine and adenosine A(2a) receptor antagonists prevent beta-amyloid (25-35)-induced cognitive deficits in mice[END_REF][START_REF] Cunha | Adenosine A2A receptor blockade prevents memory dysfunction caused by beta-amyloid peptides but not by scopolamine or MK-801[END_REF].

Although no references are available about adenosine content in SAM brain, at least to our knowledge, changes in neurotransmitter levels in SAM animals have been reported as increasing in GABA and decreasing in acetylcholine and serotonin [START_REF] Morley | The SAMP8 mouse: a model of Alzheimer disease?[END_REF]. In the hippocampus and/or cerebral cortex of P8 strain at early ages, the contents of Glutamate (Glu) and Glutamine (Gln) were higher than in R1, while the aspartate (Asp) and Alanine (Ala) content was lower, which suggests that a metabolic pathway from alphaketoglutarate to Glu predominates in SAMP8 brain [START_REF] Kitamura | Age-related changes in transmitter glutamate and NMDA receptor/channels in the brain of senescenceaccelerated mouse[END_REF][START_REF] Nomura | Aging in the glutamatergic system with special reference to the NMDA receptor/ion channel complex in the brains of senescence accelerated mice[END_REF]. Local accumulation of excitatory amino acids can lead to neuronal degeneration because of the neurotoxic effects at high concentrations of Glu and analogues in Glu receptive areas [START_REF] Olney | Excitotoxic amino acids and neuropsychiatric disorders[END_REF]. Increased glutamate levels have been found in several brain areas in AD and in cerebrospinal fluid (CSF) from AD patients [START_REF] Procter | Evidence of glutamatergic denervation and possible abnormal metabolism in Alzheimer's disease[END_REF][START_REF] Pomara | Glutamate and other CSF amino acids in Alzheimer's disease[END_REF]. This excess of endogenous glutamate would contribute to cell death in AD, possibly as the result of the failure to remove glutamate from synapse [START_REF] Greenamyre | Excitatory amino acids and Alzheimer's disease[END_REF]. In agreement, a downregulation and desensitization of metabotropic glutamate receptors in the frontal cortex in common forms of dementia with Lewy bodies (DLB) and in Alzheimer disease cases have been detected (Albasanz et al., 2005). The neuroprotective role of adenosine is mainly due to inhibition of glutamate release through adenosine A 1 receptor activation.

Therefore, the loss of A 1 receptors could be responsible for the increase in the glutamate level in SAM mice.

In summary, in SAMR1 mice used here as controls, it was shown that there is an age-related loss of adenosine A 1 receptor, as also observed in rats, but at early stages.

Moreover, the most important result in this work is that in brain from very young SAMP8 mice there is a reduced A 1 receptor level similar to that obtained in aged SAMR1, suggesting an important alteration of these receptors at only three weeks of life which is maintained thereafter. In vivo PET study detected an age-dependent A 1 receptor loss in humans that may be of pathophysiological importance in various neurological diseases associated with aging ( Meyer et al., 2006). Therefore, SAM mice may represent an important model in the study of alteration of neurotransmitter receptors related to neurodegenerative diseases.

Figure 1 .

 1 Figure 1. Adenosine A 1 , A 2A , A 2B , and A 3 receptor gene expression assayed by

Figure 2 .

 2 Figure 2. Adenosine A 1 receptor detection in SAM mice by radioligand binding assay. Saturation curves of [ 3 H]DPCPX binding to plasma membranes were performed

Figure 3 .

 3 Figure 3. Gpp(NH)p effect on radioligand binding assay in SAM mice. [ 3 H]DPCPX

Figure 4 .

 4 Figure 4. Western-blot of A 2A R in plasma membranes from SAM mice. Fifty

Figure 5 .

 5 Figure 5. Western-blot of A 1 R in plasma membranes from SAM mice. Fifty

Figure 6 .

 6 Figure 6. Adenosine A 1 receptor detection in Wistar rats by radioligand binding assay. Saturation curves of [ 3 H]DPCPX binding to plasma membranes were performed

Figure 7 .

 7 Figure 7. Adenylyl cyclase activity in brain plasma membranes from Wistar rats.

Acknowledgements

This work was supported in part by the European Union through the Marie-Curie Research Training Network PRAIRIES (contract MRTN-CT-2006-035810), by the Consejería de Educación y Ciencia (PCI08-0125), the Consejería de Sanidad (PI-2007/50 and G-2007-C/13) of the Junta de Comunidades de Castilla-La Mancha, the Ministerio de Ciencia e Innovación (BFU2008-00138) and the Instituto de Salud Carlos III (PI080400).


Alexandre Chapoutot
email: alexandre.chapoutot@lip6.fr

Interval Slopes as a Numerical Abstract Domain for Floating-Point Variables

The design of embedded control systems is mainly done with model-based tools such as Matlab/Simulink. Numerical simulation is the central technique of development and verification of such tools. Floating-point arithmetic, which is well-known to only provide approximated results, is omnipresent in this activity. In order to validate the behaviors of numerical simulations using abstract interpretationbased static analysis, we present, theoretically and with experiments, a new partially relational abstract domain dedicated to floating-point variables. It comes from interval expansion of non-linear functions using slopes and it is able to mimic all the behaviors of the floating-point arithmetic. Hence it is adapted to prove the absence of run-time errors or to analyze the numerical precision of embedded control systems.

Introduction

Embedded control systems are made of a software and a physical environment which aim at continuously interact with each other. The design of such systems is usually realized with the model-based paradigm. Matlab/Simulink 1 is one of the most used tools for this purpose. It offers a convenient way to describe the software and the physical environment in an unified formalism. In order to verify that the control law, implemented in the software, fits the specification of the system, several numerical simulations are made under Matlab/Simulink. Nevertheless, this method is closer to test-based method than formal proof. Moreover, this verification method is strongly related to the floating-point arithmetic which provides approximated results.

Our goal is the use of abstract interpretation-based static analysis [START_REF] Cousot | Abstract Interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints[END_REF] to validate the design of control embedded software described in Matlab/Simulink. In our previous work [START_REF] Chapoutot | Abstract simulation: a static analysis of Simulink models[END_REF], we defined an analysis to validate that the behaviors given by numerical simulations are close to the exact mathematical behaviors. It was based on an interval abstraction of floating-point numbers which may produce too coarse results. In this article, our work is focused on a tight representation of the behaviors of the floating-point arithmetic in order to increase the precision of the analysis of Matlab/Simulink models.

To emphasize the poor mathematical properties of the floating-point arithmetic, let us consider the sum of numbers given in Example 1 with a single precision floating-point arithmetic. The result of this sum is -2.08616257.10 -6 due to rounding errors, whereas the exact mathematical result is zero.

Example 1.

0.0007 + (-0.0097) + 0.0738 + (-0.3122) + 0.7102 + (-0.5709) + (-1.0953) + 3.3002 + (-2.9619) + (-0.2353) + 2.4214 + (-1.7331) + 0.4121 1 Trademarks of The Mathworks TM company.

Example 1 shows that the summation of floating-point numbers is a very ill-conditioned problem [START_REF] Muller | Handbook of floating-point arithmetic[END_REF]Chap. 6]. Indeed, small perturbations on the elements to sum produce a floating-point result which could be far from the exact result. Nevertheless, it is a very common operation in control embedded software. In particular, it is used in filtering algorithms or in regulation processes, such as for example in PID 2 regulation. Remark that depending on the case, the rounding errors may stay insignificant and the behaviors of floatingpoint arithmetic may be safe. In consequence, a semantic model of this arithmetic could be used to prove the behaviors of embedded control software using floating-point numbers.

The definition of abstract numerical domains for floating-point numbers is usually based on rational or real numbers [START_REF] Goubault | Static analyses of floating-point operations[END_REF][START_REF] Miné | Relational abstract domains for the detection of floating-point run-time errors[END_REF] to cope with the poor mathematical structure of the floating-point set. In consequence, these domains give an over-approximation of the floating-point behaviors. This is because they do not bring information about the kind of numerical instability appearing during computations. We underline that our goal is not interested in computing the rounding errors but the floating-point result. In others words, we want to compute the bounds of floating-point variables without considering the numerical quality of these bounds.

Our main contribution is the definition of a new numerical abstract domain, called Floating-Point Slopes (FPS), dedicated to the study of floating-point numbers. It is based on interval expansion of non-linear functions named interval slopes introduced by Krawczyk and Neumaier [START_REF] Krawczyk | Interval slopes for rational functions and associated centered forms[END_REF] and, as we will show in this article, it is a partially relational domain. The main difference is that, in Proposition 1, we adapt the interval slopes to deal with floating-point numbers. Moreover, we are able to tightly represent the behaviors of floating-point arithmetic with our domain. A few cases studies will show the practical use of our domain. Hence we can prove properties on programs taking into account the behaviors of the floating-point arithmetic such that the absence of run-time errors or, by combining it with other domains e.g. [START_REF] Chapoutot | Automatic differentiation and Taylor forms in static analysis of numerical programs[END_REF], the quality of numerical computations.

Content. In Section 2, we will present the main features of floating-point arithmetic and we will also introduce the interval expansions of functions. We will present our abstract domain FPS in Section 3 and the analysis of floating-point programs in Section 4 before describing experimental results in Section 5. In Section 6, we will reference the related work before concluding in Section 7.

Background

We recall the main features of the IEEE754-2008 standard of floating-point arithmetic in Section 2.1. Next in Section 2.2, we present some results from interval analysis, in particular the interval expansion of functions.

Floating-Point Arithmetic

We briefly present the floating-point arithmetic, more details are available in [START_REF] Muller | Handbook of floating-point arithmetic[END_REF] and the references therein. The IEEE754-2008 standard [START_REF]Standard for Floating-Point Arithmetic[END_REF] defines the floating-point arithmetic in base 2 which is used in almost every computer 3 .

Floating-point numbers have the following form: f = s.m.2 e . The value s represents the sign, the value m is the significand represented with p bits and the value e is the exponent of the floating-point number f which belongs into the interval [e min , e max ] such that e max = -e min + 1. There are two kinds of numbers in this representation. Normalize numbers for which the significand implicitly starts with a 1 and denormalized numbers that implicitly starts with a 0. The later are used to gain accuracy around zero by slowly degrading the precision.

The standard defines different values of p and e min : p = 24 and e min = -126 for the single precision and p = 53 and e min = -1022 for the double precision. We call normal range the set of absolute real values in [2 emin , (2 -2 1-p )2 emax ] and the subnormal range the set of numbers in [0, 2 emin [. The set of floating-point numbers (single or double precision) is represented by F which is closed under negation. A few special values represent special cases: the values -∞ and +∞ to represent the negative or the positive overflow; and the value NaN4 represents invalid results such that √ -1. The standard defines round-off functions which convert exact real numbers into floating-point numbers. We are mainly concerned by the rounding to the nearest ties to even5 (noted fl), the rounding towards +∞ and rounding toward -∞. The round-off functions follow the correct rounding property, i.e. the result of a floating-point operation is the same that the rounding of the exact mathematical result. Note that these functions are monotone. We are interested in this article by computing the range of floating-point variables rounded to the nearest which is the default mode of rounding in computers.

A property of the round-off function fl is given in Equation [START_REF] Bischof | Implementation of automatic differentiation tools[END_REF]. It characterizes the overflow, i.e. the rounding result is greater than the biggest element of F and the case of the generation of 0. This definition only uses positive numbers, using the symmetry property of F, we can easily deduce the definition for the negative part. We denote by σ = 2 emin-p+1 the smallest positive subnormal number and the largest finite floating-point number by Σ = (2

-2 1-p )2 emax . ∀x ∈ F, x > 0, fl(x) = +0 if 0 < x ≤ σ/2 +∞ if x ≥ Σ (1)
An underflow [28, Sect. 2.3] is detected when the rounding result is less than 2 emin , i.e. the result is in the subnormal range.

The errors associated to a correct rounding is defined in Equation ( 2) and it is valid for all floating-point numbers x and y except -∞ and +∞ (see [START_REF] Muller | Handbook of floating-point arithmetic[END_REF]Chap. 2,Sect. 2.2]). The operation ⋄ ∈ {+, -, ×, ÷} but it is also valid for the square root. The relative rounding error unit is denoted by µ. In single precision, µ = 2 -24 and σ = 2 -149 and in double precision, µ = 2 -53 and σ = 2 -1074 .

fl(x ⋄ y) = (x ⋄ y)(1 + ǫ1) + ǫ2 with |ǫ1| ≤ µ and |ǫ2| ≤ 1 2 σ (2) If fl(x ⋄ y) is in the normal range or if ⋄ ∈ {+, -} then ǫ 2 is equal to zero. If fl(x ⋄ y) is in the subnormal range then ǫ 1 is equal to zero.
Numerical instabilities in programs come from the rounding representation of values and they also came from two problems due to finite precision: Absorption If |x| ≤ µ|y| then it happens that fl(x + y) = fl(y). For example, in single precision, the result of fl(10 4 -10 -4 ) is fl(10 4 ). In numerical analysis, the solution avoid this phenomenon is to sort the sequence of numbers [START_REF] Higham | Accuracy and stability of numerical algorithms[END_REF]Chap. 4]. This solution is not applicable when the numbers to add are given by a sensor measuring the physical environment.

Cancellation It appears in the subtraction fl(x -y) if (|x -y|) ≤ µ(|x| + |y|) then the relative errors can be arbitrary big. Indeed, the rounding errors take usually place in the least significant digits of floating-point numbers. These errors may become preponderant in the result of a subtraction when the most significant digits of two closed numbers cancelled each others. In numerical analysis, subtraction of numbers coming from long computations are avoided to limit this phenomena. We cannot apply this solution in embedded control systems where some results are used at different instants of time.

Interval Arithmetic

We introduce interval arithmetic and in particular, the interval expansion of functions which is an element of our abstract domain FPS.

Standard Interval Arithmetic.

The interval arithmetic [START_REF] Moore | Interval analysis[END_REF] has been defined to avoid the problem of approximated results coming from the floating-point arithmetic. It had also been used as the first numerical abstract domain in [START_REF] Cousot | Abstract Interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints[END_REF]. When dealing with floating-point intervals the bounds have to be rounded to outward as in [START_REF] Miné | Relational abstract domains for the detection of floating-point run-time errors[END_REF]Sect. 3]. In Example 2, we give the result of the interval evaluation in single precision of a sum of floating-point numbers.

Example 2. Using the interval domain for floating-point arithmetic [START_REF] Miné | Relational abstract domains for the detection of floating-point run-time errors[END_REF]Sect. 3] the result of the sum defined by A source of over-approximation is known in the interval arithmetic as the dependency problem which is also known in static analysis as the non-relational aspect. For example, if some variable has value [a, b],

then the result of x -x is [a -b, b -a] which is equal to zero only if a = b.

Extended Interval Arithmetic.

We are interested in the computation of the image of a vector of interval X by a non-linear function f : R n → R only composed by additions, subtractions, multiplications and divisions and square root. In order to reduce over-approximations in the interval arithmetic, some interval expansions have been developed. The first one is based on the Mean-Value Theorem and it is expressed as:

f( X) ⊆ f( z) + [f ′ ]( X)( X -z) ∀ z ∈ X . (3)
The first-order approximation of the range of a function f can be defined thanks to its first order derivative f ′ over X. We can then approximate f( X) by a pair (f( z), [f ′ ]( X)) that are the value of f at point z and the interval extension of f ′ evaluated over X.

A second interval expansion has been defined by Krawczyk and Neumaier [START_REF] Krawczyk | Interval slopes for rational functions and associated centered forms[END_REF] using the notion of slopes which reduced the approximation of the derivative form. It is defined by the relation:

f( X) ⊆ f( z) + [F z ]( X)( X -z) with F z ( X) = f( x) -f( z) x -z : x ∈ X ∧ z = x . (4)
Then we can represent f( X) by a pair (f( z), [F z ]( X)) that are the value of f in the point z and the interval extension of the slope F z (X) of f. Note that the value z is constructed, in general, from the centers of the interval variables appearing in the function f for both interval expansions.

An interesting feature is that we can inductively compute the derivative or the slope of a functions using automatic differentiation techniques [START_REF] Bischof | Implementation of automatic differentiation tools[END_REF]. It is a semantic-based method to compute derivatives. In this context, we call independent variables some input variables of a program with respect to which derivatives are computed. We call dependent variables output variables whose derivatives are desired. A derivative object represents derivative information, such as a vector of partial derivatives like (∂e/∂x 1 , . . . , ∂e/∂x n ) of some expression e with respect to a vector x of independent variables. The main idea of automatic differentiation is that every complicated function f, i.e. a program, is composed by simplest elements, i.e. program instructions.

Knowing the derivatives of these elements with respect to some independent variables, we can compute the derivatives or the slopes of f following the differential calculus rules. Furthermore, using interval arithmetic in the differential calculus rules, we can guarantee the result.

We give in Table 1 the rules to compute derivatives or slopes with respect to the structure of arithmetic expressions. We assume that we know the number of independent variables in the programs and we denote by n this number. The variable V ind represents the vector of independent variables with respect to which the derivatives are computed. We denote by δ i the interval vector of length n, having all its coordinates equal to [0, 0] except the i-th element equals to [START_REF] Bischof | Implementation of automatic differentiation tools[END_REF][START_REF] Bischof | Implementation of automatic differentiation tools[END_REF]. So, we consider that all the independent variables are assigned to a unique position i in V ind and it is initially assigned with a derivative object equal to δ i . Following Table 1 where g and h represent variables with derivative object, a constant value c has a derivative object equal to zero (the interval vector 0 has all its coordinates equal to [0, 0]). For addition and subtraction, the result is the vector addition or the vector subtraction of the derivative objects. For multiplication and division, it is more complicated but the rules come from the standard rules of the composition of derivatives, e.g.

(u × v) ′ = u ′ × v + u × v ′ .
A proof of the computation rules 6 for slopes can be found in [START_REF] Rump | Expansion and estimation of the range of nonlinear functions[END_REF]Sect. 1]. Note that we can apply automatic differentiation for other functions, such as the square root, using the rule of function composition, (f

• g) ′ (x) = f ′ (g(x))g ′ (x).
These interval expansions of functions, using either (f( z), [f ′ ]( X)) the derivative form or (f( z), [f z ]( X)) the slope form, define a straightforward semantics of arithmetic expressions which can be used to compute bounds of variables.

c ∈ R 0 0 g + h [g ′ ]( X) + [h ′ ]( X) [G z ]( X) + [H z ]( X) g -h [g ′ ]( X) -[h ′ ]( X) [G z ]( X) -[H z ]( X) g × h [g ′ ]( X) × h( X) + g( X) × [h ′ ]( X) [G z ]( X) × h( X) + g( z) × [H z ]( X) g h [g ′ ]( X) × h( X) -[h ′ ]( X) × g( X) h 2 ( X) [G z ]( X) -[H z ]( X) × g( z) h( z) h( X) √ g 1 2 [g ′ ]( X) g( X) [G z ]( X) g( z) + g( X)
Remark 1. The difference in over-approximated result between the derivative form and the slope form is in the multiplication and the division rules. In the derivative form, we need to evaluate the two operands (g and h) using interval arithmetic while we only need to evaluate one of them in the slope form. Note also that we could have defined the multiplication by [H z ]( X) × g( X) + h( z) × [G z ]( X) (the division has also two forms) but the two possible forms of slope are over-approximations of f( X). Nevertheless, a possible way to choose between the two forms is to keep the form which gives the smallest approximation of f( X).

In Figure 1, we give two graphical representations of interval slope expansion. For this purpose, we want to compute the image of x by the function f (x) = x(1 -x) + 1. We consider in Figure 1(a) that x ∈ [-1, 1/2] and we get as a result that f (x) ∈ [-1, 19/8] which is an over-approximation of the exact result [-1, 5/4]. The midpoint is -1/4 and the set of slopes is bounded by the interval [0, 9/4]. The dashed lines represent the linear approximation of the image. In Figure 1(b), we consider that x ∈ [-1/2, 1/2] and the result is f (x) ∈ [1/4, 7/4] which is still an over-approximation of the exact result [1/4, 5/4]. In that case, the midpoint is 0 and the set of slopes is bounded by the interval [0, 3/2]. Note that the smaller the interval the better the approximation is. -1 Example 3 shows that we can encode with interval slopes the list of variables contributing in the result of an arithmetic expression. In particular, the vector composing the interval slope of the variable t represents the influence of the variables a, b and c on the value of t. For example, we know that a modification of the value of the variable a produce a modification of the result with the same order of the modification on a because the slope associated to a is [START_REF] Bischof | Implementation of automatic differentiation tools[END_REF][START_REF] Bischof | Implementation of automatic differentiation tools[END_REF]. But a modification on the variable b by ∆ b will produce a modification on the t by ∆ b × V c because the slope of b is equal to V c . Example 3. Let t = a + b × c, we want to compute the interval slope [T z ]( X) of t. We consider that V ind = {a, b, c} and X is the interval vector of the values of these variables. We suppose that the interval slope expansion of a, b and c are

-1 4 (a) x ∈ [-1, 1/2] x f (x) y = 3 2 x + 1 y = 1 1 2 -1 2 7 4 1 4 (b) x ∈ [-1/2, 1/2]
(z a , [A z ]( X) = δ 1 ), (z b , [B z ]( X) = δ 2 ), and (z c , [C z ]( X) = δ 3 ) respectively. The interval value associated to c is V c i.e. V c = z c + [C z ]( X)( X -z). [T z ]( X) = [A z ]( X) + z b [C z ]( X) + [B z ]( X) zc + [C z ]( X)( X -z) = ([1, 1], 0, 0) + z b × (0, 0, [1, 1]) + (0, [1, 1], 0) × Vc = ([1, 1], [1, 1] × Vc, z b × [1, 1]) = ([1, 1], Vc, [z b , z b ])
As seen in Example 3, interval slopes represent relations between the inputs and the outputs of a function. By computing interval slopes, we build step by step the set of variables related to arithmetic expressions in programs. In static analysis, we can use this interval expansion to track the influence of the inputs of a program on its outputs. Hence the choice of the set V ind of independent variables is given by the set of the input variables of the program to analyse. Moreover, we can add in V ind all the other variables which may influence output.

Floating-Point Slopes

We present in this section our new abstract domain FPS. In Section 3.1, we adapt the computation rules of interval slopes to take into account floating-point arithmetic. Next in Section 3.2, we define an abstract semantics of arithmetic expressions over FPS values taking into account the behaviors of floating-point arithmetic. And in Section 3.3, we define the order structure of the FPS domain.

Floating-Point Version of Interval Slopes

The definition of interval slope expansion in Section 2.2 manipulates real numbers. In case of floating-point numbers, we have to take into account the round-off function and the rounding-errors.

We show in Proposition 1 that the range of a non-linear function f of floating-point numbers can be soundly over-approximated by a floating-point slope. The function f must respect the correct rounding, i.e. the property of Equation ( 2) must hold. In other words, the result of an operation over set of floatingpoint numbers is over-approximated by the result of the same operation over floating-point slopes by adding a small quantity depending on the relative rounding error unit µ and the absolute error σ. Proposition 1. Let f : D ⊆ R n → R be an arithmetic operation of the form g ⋄ h with ⋄ ∈ {+, -, ×, ÷} or √ , i.e. f respects the correct rounding. For all X ⊆ D and z ∈ D, we have:

fl f( X) ⊆ f( z) 1 + [-µ, µ] + - σ 2 , σ 2 + [F z ]( X)(X -z) 1 + [-µ, µ] .
Proof.

fl f( X) = {f( x)(1 + εx) + εx : x ∈ X} by Eq. (2) ⊆ f( X) + f( X){εx : x ∈ X} + {εx : x ∈ X} ⊆ f( z) + [F z ]( X)( X -z) + {εx : x ∈ X} by Eq. (4) + f( z) + [F z ]( X)( X -z) {εx : x ∈ X} ⊆ f( z) 1 + {εx : x ∈ X} + {εx : x ∈ X} + [F z ]( X)( X -z) 1 + {εx : x ∈ X} ⊆ f( z) 1 + [-µ, µ] + - σ 2 , σ 2
|εx| ≤ µ by Eq. ( 2)

+ [F z ]( X)( X -z) 1 + [-µ, µ] |εx| ≤ 1 2 σ by Eq. (2)
Remark 2. As the floating-point version of slopes is based on µ and σ, we can represent the floatingpoint behaviors depending of the hardware. For example, extended precision7 is represented using the values µ = 2 -64 and σ = 2 -16446 . Furthermore following [START_REF] Boldo | Hardware-independant proofs of numerical programs[END_REF], we can compute the result of a double rounding 8 with µ = (2 11 + 2)2 -64 and σ = (2 11 + 1)2 -1086 .

Proposition 1 shows that we can compute the floating-point range of a function f, respecting the correct rounding, using interval slopes expansion. That is a set of floating-point values can is represented by a pair:

[f] ( z) 1 + [-µ, µ] + - σ 2 , σ 2 , [F z ]( X) 1 + [-µ, µ] .
The first element is a small interval rounding to the nearest around f( z) for which we have to take into account the possible rounding errors. The second element is the interval slopes which have to take account of relative errors. Note that this adaptation adds a very little overhead of computations compared to the definition of interval slopes by Krawczyk and Neumaier.

is defined in Equation [START_REF] Clarisó | The Octahedron abstract domain[END_REF].

ρ(g | h) =                ([0, 0], 0) if ι Mg, Sg ⊑ I [µ, µ] × ι M h , S h Mg, 0 ⊔I Sg if ι Mg, Sg ⊓ I [µ, µ] × ι M h , S h = ⊥ I and Mg = [0, 0] if Mg ⊑ I [µ, µ] × ι M h , S h [0, 0] ⊔ I Mg otherwise Mg, Sg otherwise (8)
Equation ( 8) models the absorption phenomenon by explicitly setting to zero the values of a slope. As mentioned in Section 2.2, a slope shows which variables influence the computation of an arithmetic expression. But, absorption phenomena induce that an operand does not influence the result of an addition or a subtraction any more.

Using the functions Φ, ρ and ι, we inductively define on the structure of arithmetic expressions the abstract semantics . ♯ S of floating-point slopes in Figure 2. We denote by env ♯ an abstract environment which associates to each program variable a floating-point slope. For each arithmetic operation, we componentwisely combine the elements of the abstract operands g

♯ S (env ♯ ) = (M g , S g ) and h ♯ S (env ♯ ) = (M h , S h ).
The element M is obtained using the interval arithmetic with rounding to the nearest. The element S is computed using the definition of the slope arithmetic defined in Table 1. We take into account of the possible rounding errors in the result (M, S) following Proposition 1. In case of addition and subtraction, according to the Equation (2), we do not consider absolute error σ 2 which is always zero. Moreover, in case of addition or subtraction, we handle the absorption phenomena using the function ρ, defined in Equation [START_REF] Clarisó | The Octahedron abstract domain[END_REF]. Finally, we check if a zero or an overflow is generated by applying the function Φ defined in Equation [START_REF] Chen | An abstract domain to discover interval linear equalities[END_REF]. use the semantics of tests given in [START_REF] Granger | Improving the results of static analyses programs by local decreasing iteration[END_REF] to refine the value of variables. Note that the semantics of tests is related to the meet operation defined in Equation ( 11) which may conserve some relations between variables. We define in Equation ( 13) the concretization function γ S between the join-semilattice V → S, ⊑S , with ⊑S the point-wise lifting comparison, and the complete lattice ℘(V → F), ⊆ .

g ± h ♯ S (θ ♯ ) = Φ ( Mg ± Mh )(1 + [-µ, µ]), ˜ Sg ± ˜ S h (1 + [-µ, µ]) with ( Mg, ˜ Sg) = ρ(g | h) and ( Mh , ˜ S h ) = ρ(h | g) g × h ♯ S (θ ♯ ) = Φ M, Sg × ι(M h , S h ) + Mg × S h (1 + [-µ, µ]) with M = (Mg × M h )(1 + [-µ, µ]) + σ 2 , σ 2
g h ♯ S (θ ♯ ) = Φ M, Sg -S h Mg M h ι(M h , S h ) (1 + [-µ, µ]) with M = Mg M h (1 + [-µ, µ]) + σ 2 , σ 2 , 0 ∈ ι(M h , S h ) and 0 ∈ M h √ g ♯ S (θ ♯ ) = Φ   M,   Sg Mg + ι(Mg, Sg)   (1 + [-µ, µ])   with M = Mg (1 + [-µ, µ]) + - σ 2 , σ 2
γ S v → M, S = u∈ V V ind v → i ∈ I : I = M + S • u -mid V V ind (13)
In Theorem 1, we state the soundness of the floating-point analysis using FPS domain with respect to the concrete floating-point semantics. The later is based on the concrete semantics of floating-point expressions e , see [START_REF] Miné | Relational abstract domains for the detection of floating-point run-time errors[END_REF] for its definition.

Theorem 1. If the set of concrete environments env is contained in the abstract environment env ♯ then we have for all instruction i representing either an assignment or a test:

i (env) ⊆ γ S i ♯ (env ♯ ) .

Case Studies

In this section, we present experimental results of the static analysis of numerical programs using our floating-point slope domain. We based our examples on Matlab/Simulink models which are block-diagrams. We present as examples a second order linear filter and a square root computation with a Newton method. We first give a quick view of Matlab/Simulink models. In a block-diagram, each node represents an operation and each wire represents a value evolving during time. We consider a few operations such that arithmetic operations, gain operation that is multiplication by a constant, conditional statement (called switch9 in Simulink), and unit delay block represented by 1 z which acts as a memory. We can hence write discrete-time models thanks to finite difference equations, see [START_REF] Chapoutot | Abstract simulation: a static analysis of Simulink models[END_REF] for further details.

The semantics of Simulink models is based on finite-time execution. In other words, a Simulink model is implicitly embedded in a simulation loop modelling the temporal evolution starting from t = 0 to a given final time t end . The body of this loop follows three steps: i) evaluating the inputs, ii) computing the outputs, iii) updating the state variables i.e. values of the unit delay blocks. The static analysis of Simulink models transforms the simulation loop into a fixpoint computation. In its simple form, see [START_REF] Chapoutot | Abstract simulation: a static analysis of Simulink models[END_REF] for further details, we add an extra time instant to collect all the behaviors from t end to t = +∞.

Linear Filter.

We applied the floating-point slope domain on a second order linear filter defined by: y n = x n + 0.7x n-1 + x n-2 + 1.2y n-1 -0.7y n-2 .

The block-diagrams of this filter is given in Figure 3(a). We consider a simulation time of 25 seconds that is we unfold the simulation loop 25 times before making unions. The input belongs into the interval [0.71, 1.35]. The output of the filter is given in Figure 3(b). We consider, in this example, that V ind contains the input and the four unit delay blocks that is there are five independent variables. The gray area represents all the possible trajectories of the output corresponding of the set of inputs. Hence we can bound the output, without using the widening operator, by the interval [0.7099, 9.8269].

Newton Method.

We applied our domain on a Newton algorithm which computes the square root of a number a using the following iterative sequence: x n+1 = xn 2 + a 2xn . We want to compute x 5 that is we consider the result of the Newton method after five iterations. The Simulink model is given in Figure 4(a) and in Figure 4(b), we give the model associated to one iteration of

Conclusion

We presented a new partially relational abstract numerical domain called FPS dedicated to floating-point variables. It is based on Krawczyk and Neumaier's work [START_REF] Krawczyk | Interval slopes for rational functions and associated centered forms[END_REF] on interval expansion of rational function using interval slopes. This domain is able to mimic the behaviors of the floating-point arithmetic such that the absorption phenomenon. We also presented experimental results showing the practical use of this domain in various contexts.

We want to pursue the work on the FPS domain by refining the the meet operation in order to keep relations between variables. Moreover we would like to model more closely the behaviors of floating point arithmetic, for example by taking into account the hardware instructions [START_REF] Monniaux | Compositional analysis of floating-point linear numerical filters[END_REF]Sect. 3].

As an other future work, we want to apply FPS domain for the analyses of the numerical precision by combining the FPS domain and domains defined in [START_REF] Martel | Semantics of roundoff error propagation in finite precision computations[END_REF][START_REF] Chapoutot | Automatic differentiation and Taylor forms in static analysis of numerical programs[END_REF]. An interesting direction should be to make an analysis of the numerical precision by comparing results of the FPS domain and results coming from the other numerical domain which bound the exact mathematical behaviors such that [START_REF] Chen | A sound floating-point polyhedra abstract domain[END_REF]. Hence we can avoid the manipulation of complex abstract values to represent rounding errors such as in [START_REF] Martel | Semantics of roundoff error propagation in finite precision computations[END_REF][START_REF] Goubault | Static analysis of numerical algorithms[END_REF][START_REF] Chapoutot | Automatic differentiation and Taylor forms in static analysis of numerical programs[END_REF].

10 i=1 10 1 + 10 i=1 10 2 + 10 i=1 10 3

 1010103 + 1000 i=1 10 -3 is [11100, 11101.953]. The exact result is 11101 while the floating-point result is 11100 due to an absorption phenomena. The floating-point result and the exact result are in the result interval but we cannot distinguish them any more.

  This problem is addressed by considering interval expansions of functions. Notations. We denote by x a real number and by x a vector of real numbers. Interval values are in capital letters X or denoted by [a, b] where a is the lower bound and b is the upper bound of the interval. A vector of interval values will be denoted by X. We denote by [f] the interval extension of a function f obtained by substitution of all the arithmetic operations with their equivalent in interval. The center of an interval [a, b] is represented by mid([a, b]) = a + 0.5 × (b -a).

Figure 1 :

 1 Figure 1: Two examples of the interval expansion with slopes

,Figure 2 : 3 .

 23 Figure 2: Abstract semantics of arithmetic expressions on floating-point slopes

Table 1 :

 1 Automatic differentiation rules for derivatives and slopes

	Function	Derivative arithmetic	Slope arithmetic

PID stands for proportional-integral-derivative. It is a generic method of feedback loop control widely used in industry.

It also defines this arithmetic in base 10 but it is not relevant for our purpose.

NaN stands for Not A Number.

The IEEE754-2008 standard introduces two rounding modes to the nearest with respect to the previous IEEE754-1985 and IEEE754-1987 standards. These two modes only differ when an exact result is in half-way of two floating-point numbers. In rounding-to-nearest-tie-to-even mode, the floating-point number whose the least significand bit is even is chosen. Note that this definition is used in all the other revisions of the IEEE754 standard, see[START_REF] Muller | Handbook of floating-point arithmetic[END_REF] Chap. 3.4] for more details.

In[START_REF] Krawczyk | Interval slopes for rational functions and associated centered forms[END_REF] Sect. 2], the authors went also into detail of the complexity of these operations.

In some hardware, e.g. Intel x87, floating-point numbers may be encoded with

bits in registers, i.e. the significand is 64 bits long.[START_REF] Clarisó | The Octahedron abstract domain[END_REF] It may happen on hardware using extended precision. Results of computations are rounded in registers and they are rounded again, with a less precision, in memory.

This operation is equivalent to the conditional expression: if pc(e 0 ) then e 1 else e 2 . The predicate pc has the form e 0 ⋄ c where c is a given constant and ⋄ ∈ {≥, >, =}.

Acknowledgements.

The author deeply thanks O. Bouissou, S. Graillat, T. Hilaire, D. Massé and M. Martel for their useful comments on the earlier versions of this article. He is also very grateful to anonymous referees who helped improving this work.

Semantics of Arithmetic Operations

In this section, we define the abstract semantics of arithmetic operations over elements of floating-point slopes domain in order to mimic the behaviors of the floating-point arithmetic. We denote by I the set of intervals and by S = I × I |V ind | the set of slopes. An element s of S is represented by a pair (M, S) where M is a floating-point interval and S is a vector of floating-point intervals. We denote by I, ⊑ I , ⊥ I , ⊤ I , ⊔ I , ⊓ I the lattice of intervals. First we define some auxiliary functions before presenting the semantics of arithmetic expressions over FPS.

The function ι defined in Equation ( 5) computes the interval value associated to a floating-point slopes (M, S). We assume that the values of independent variables are kept in a separate interval vector V V ind . The notation mid( V V ind ) stands for the component-wise application of the function mid on all the components of the vector V V ind . Note that • represents the scalar product.

The function κ defined in Equation ( 6) transforms an interval value [a, b] ℓ associated to the ℓ-th independent variable into a floating-point slope.

This function κ is used in two cases: i) To initialize all the independent variables at the beginning of an analysis. ii) In the meet operation, see Section 3.3. We can detect overflows and generations of zero by using the function Φ defined in Equation [START_REF] Chen | An abstract domain to discover interval linear equalities[END_REF]. We have two kinds or rules: total rules when we are certain that a zero or an overflow occur and partial rules when a part of the set described by a floating-point slope generates a zero or an overflow. With the function ι we can determine for an element (M, S) ∈ S if (M, S) represents an overflow or a zero. Hence we represent the finite precision of the floating-point arithmetic. We denote by p ∞ and by m ∞ the interval vectors with all their components equal to [+∞, +∞] and [-∞, -∞] respectively. We recall that σ is the smallest denormalized and Σ is the largest floating-point numbers.

Equation ( 7) is an adaptation of the rule defined in Equation ( 1) to deal with FPS values. Furthermore, the abstract values (+∞, p ∞ ) and (-∞, m ∞ ) represent the special floating-point values +∞ and -∞ respectively. As in floating-point arithmetic, the values (+∞, p ∞ ) and (-∞, m ∞ ) are absorbing elements. An interesting feature of interval slopes is that we can mimic the absorption phenomenon by setting to zero the interval slope of the absorbed operand. We define the function ρ for this purpose. Indeed, an abstract value (M, S) already supports partial absorption as M is computed with a rounding to the nearest but S have to be reduced to represent the absence of the influence of particular independent variables. The reduction of an abstract value g = (M g , S g ) compared to an abstract value h = (M h , S h ), denoted by ρ(g | h),

Order Structure

In this section, we define the order structure of the set S of floating-point slopes. In particular, this structure is based on the lattice of intervals. We recall that the set of slopes S = I × I |V ind | and an element s of S is a pair (M, S).

We define a partial order, the join and the meet operations between elements of S. All these operations are defined as a component-wise application of the associated operations of the interval domain except the meet operation which needs extra care. We denote by ⊑I the component-wise application of the interval order. We can define a partial order ⊑ S between elements of S with:

The join operation ⊔ S over floating-point slopes is defined in Equation [START_REF] Cousot | Automatic discovery of linear restraints among variables of a program[END_REF]. We denote by ⊔I the component-wise application of the operation ⊔ I .

with M = Mg ⊔ I M h and S = Sg ⊔I S h [START_REF] Cousot | Automatic discovery of linear restraints among variables of a program[END_REF] There is no direct way to define the greatest lower bound of two elements of S. Indeed, two abstract values may represent the same concrete value but without being comparable. Hence we only have a joinsemilattice structure. The meet operation ⊓ S over floating-point slopes is defined in Equation [START_REF] Férêt | Static analysis of digital filter[END_REF]. It may require a conversion into interval value. We consider that the result of the meet operation introduces a new independent variable at index ℓ. We denote by ⊏ I the strict comparison of intervals and by ⊥ S the least element of S.

Note on the Widening Operator.

In order to enforce the convergence of the fixpoint computation, we can define a widening operation ∇ S over floating-point slopes values. An advantage of our domain is that we can straightforwardly use the widening operations defined for the interval domain denoted by ∇ I . We define the operator ∇ S in Equation ( 12) using the widening operator between intervals. The notation ∇I represents the component-wise application of ∇ I between the components of the interval slopes vector.

with M = Mg ∇ I M h and S = Sg ∇I S h (12)

Analysis of Floating-Point Programs

The goal of the static analysis of floating-point programs using the floating-point slopes domain is to give for each control point and for each variable an over-approximation given by FPS of the reachable set of floating-point numbers. An abstract environment env ♯ associates to each variable v ∈ V a value of S. The set V is made of the sets V ind and V dep of independent and dependent variables. The semantics of an assignment v := e ♯ in the abstract environment env ♯ is the update of the value associated to v with the result of the evaluation of the arithmetic expression e using the arithmetic operations over FPS given in Figure 2. As the FPS domain is related to the interval domain we can straightforwardly the algorithm. In this case, the set V ind is only made of one element. For the interval input [START_REF] Chapoutot | Automatic differentiation and Taylor forms in static analysis of numerical programs[END_REF][START_REF] Clarisó | The Octahedron abstract domain[END_REF] with the initial value equals to 2, we have the result [1.8547, 3.0442].

Related Work

Numerical domains have been intensively studied. A large part of numerical domains concern the polyhedral representation of sets. For example, we have the domain of polyhedron [START_REF] Cousot | Automatic discovery of linear restraints among variables of a program[END_REF] and the variants [START_REF] Simon | Two variables per linear inequality as an abstract domain[END_REF][START_REF] Miné | The Octagon abstract domain[END_REF][START_REF] Sankaranarayanan | Efficient strongly relational polyhedral analysis[END_REF][START_REF] Péron | An abstract domain extending difference-bound matrices with disequality constraints[END_REF][START_REF] Clarisó | The Octahedron abstract domain[END_REF][START_REF] Logozzo | Pentagons: a weakly relational abstract domain for the efficient validation of array accesses[END_REF][START_REF] Laviron | Subpolyhedra: a (more) scalable approach to infer linear inequalities[END_REF][START_REF] Chen | Interval polyhedra: an abstract domain to infer interval linear relationships[END_REF][START_REF] Chen | An abstract domain to discover interval linear equalities[END_REF]. We also have the numerical domains based on affine relations between variables [START_REF] Karr | Affine relationships among variables of a program[END_REF][START_REF] Ghorbal | The zonotope abstract domain Taylor1+[END_REF] or the domain of linear congruences [START_REF] Granger | Static analysis of linear congruence equalities among variables of a program[END_REF]. In general, all these domains are based on arithmetic with "good" properties such that rational numbers or real numbers. A notable exception is the floating-point versions of the octagon domain [START_REF] Miné | Relational abstract domains for the detection of floating-point run-time errors[END_REF] and of the domain of polyhedron [START_REF] Chen | A sound floating-point polyhedra abstract domain[END_REF]. These domains give a sound over-approximation of the floating-point behaviors but they are not empowered to model the behaviors of floating-point arithmetic as we do.

Our FPS domain is more general than numerical abstract domains made for a special purpose. For example, we have the domain for linear filters [START_REF] Férêt | Static analysis of digital filter[END_REF] or for the numerical precision [START_REF] Goubault | Static analysis of numerical algorithms[END_REF] which provide excellent results. Nevertheless as we showed in Section 5, we can apply this domain in various situations without losing too much precision.


Six Blind Men and the Elephant: Benchmarking and Simulation in the Exascale Era

Paolo Faraboschi (HP Labs) As we leave the Petascale milestone behind us, the computing industry is changing rapidly to address the next challenges. Energy, dependability, cost pressure and economy of scale are pushing IT consolidation into large "cloud" datacenters where new workloads and legacy applications coexist. Data is growing at a higher exponential rate than computing, and novel data-centric architectures are starting to emerge. Heterogeneity and specialization, within and across instruction sets, are reemerging to address energy efficiency.

In light of these secular shifts in the IT industry, the benchmarking and simulation techniques are lagging behind and need to deeply transform to address the upcoming challenges. Like the ancient Hindu parable, current practices in the architecture community suffer from an excessive focus on narrow metrics, none of which is either completely correct or totally wrong, but often risk missing the big picture. This talk will discuss how computer architecture simulation and benchmarking must evolve to provide better quality decision support data for datacenter-level computing. Speed, full-system, validation and modularity are some of the fundamental characteristics of a scalable simulator. Dynamically trading off speed and accuracy, running unmodified software, and the flexibility to interface with multiple tools are other key aspects that should drive the development of the next generation simulators. As a case study, the talk will cover some of the design considerations behind COTSon, an open-source scalable full-system simulation infrastructure targeting fast and accurate evaluation of current and future computing systems.

Paolo Faraboschi is a Distinguished Technologist in the Exascale Computing Lab of HP Labs, working on next-generation data center research. He has been at HP since 1994 and recently led the COTSon full-system simulation infrastructure (http://cotson.sourceforge.net/). In the past, he was the principal architect of the Lx/ST200 family of embedded VLIW processor cores (http://en.wikipedia.org/wiki/ST200_family). Paolo is a co-author in over 30 papers, 16 patents, and the book "Embedded Computing, a VLIW approach to architecture compilers and tools". He is an active member of the architecture community, was recently program co-chair of HiPEAC'10 and MICRO'41, and is an associate editor for TACO. Paolo received his PhD in EECS from the University of Genoa (Italy) in 1993. For more information see http://www.hpl.hp.com/people/paolo_faraboschi


Forward

Following are the proceedings of the first annual Journal of Instruction-Level Parallelism Workshop on Architecture Competitions (JWAC-1). Each incarnation of this planned series of workshops is intended to provide a forum for the presentation of the best algorithms to implement one of the various important components of modern processors. It is further hoped that the workshop's organization as a contest will bring out a collection of the best algorithms for each year's topic.

The JWAC competitions are guided by the desire to provide a maximum of benefit for researchers and industry. This is accomplished in a variety of ways. First, the workshop organizers provide a standard framework for implementing algorithms for the competition. This framework provides a common baseline design and produces metrics of interest, typically performance, for the contestant's algorithm. Having a common framework that alternative algorithms can easily plug into is designed to reduce the barrier of entry for contestants. Second, the evaluations of the metrics for the algorithms are conducted across a standard set of workloads to provide a common and hopefully representative characterization of the alternatives. Together with the common baseline-design framework, the common workloads provide an opportunity to make a fair and balanced comparison among the alternative designs. Note these workloads are not provided to the contestants during the competition to avoid statistical problems related to 'designing to the workload'. Finally to allow for more comprehensive evaluations and results representative of the best algorithms known, novelty is not required for participation in the contest -if FIFO cache replacement is best we want to know that too. This year's JWAC competition has been on cache replacement algorithms for last-level caches. While the design of cache replacement algorithms dates back to the classical age of computer architecture, there has been a resurgence of interest in the area. The Moore's Law driven increases in cache sizes and especially the proliferation of shared caches resulting from the multi-core trend has piqued both industrial and academic interest in the topic. The result has been a number of cache replacementrelated innovations in topics ranging from the application of machine learning techniques to provisioning for quality of service among processes and processors. Therefore, this year's contest has categories for the best algorithms for both uni-processor and multi-processor systems.

For JWAC-1, the organizing committee provided contestants a framework to evaluate the performance of their cache replacement ideas. Details about the simulator can be found on the JWAC-1 website: http://www.jilp.org/jwac-1/. Contestants downloaded the framework from the website and evaluated their replacement ideas on the following uni-processor and/or multi-processor configurations:

1. Single-core system with a 1MB LLC. 2. 4-core CMP with a 4MB shared last-level cache.

Each contestant was asked to submit a 4-page paper describing the implementation and intuition behind the proposed replacement ideas. The contestants were required to (a) adhere to a fixed hardware budget of 8-bits per cache line plus an additional 1K bits for the entire cache (b) submit their source code with the paper (up to three source code variations of the replacement idea were allowed).

The submissions were evaluated by the workshop organizers on a pre-selected set of workloads that were only available to organizers. Besides the often used SPEC CPU2006 benchmark suite, the organizing committee also evaluated the proposals on real world workloads. For uni-processor studies, a total of 65 workloads were used. The workloads consisted of 22 multimedia and PC game workloads, 14 enterprise server workloads, and 29 SPEC CPU2006 workloads. For multi-processor studies, heterogeneous mix of workloads was used. Seven representative workloads from each category were first selected. All possible 4-core combinations of the seven workloads from each category (7 choose 4 = 35 combinations) were then created. Thus, the organizing committee used 35 heterogeneous mixes of multimedia and PC games, 35 heterogeneous mixes of enterprise server workloads, and 35 heterogeneous mixes of SPEC CPU2006 workloads. Finally, using the 21 representative workloads, the organizing committee created another 35 random combinations of 4-core workloads. The heterogeneous mix of different workload categories are used as a proxy for a virtualized system. In total, the organizing committee used 140 workloads for multi-processor configuration and 65 workloads for uni-processor configurations.

Representative regions for each workload were selected using a SimPoint like methodology. The SPEC CPU2006 workload traces were generated using Pin while the real world workloads were generated from a bus-based hardware tracing system. The real world workloads include both user-level and system-level activity. Each SPEC CPU2006 workload was used with the first reference input set. All applications warmed up the caches for the first 100M instructions and then ran for another 100M instructions. For shared cache studies, all applications in the workload continue executing until the last application finishes the requested instruction count. If an application reaches the end of the trace, the simulator restarts executing the application from the beginning.

Since the focus of this competition is on last-level cache replacement, the submissions were only evaluated at the last-level cache. The smaller levels of the cache hierarchy all used LRU replacement. For the private cache configuration, the performance metric was throughput improvement relative to an LRU managed LLC. For the shared cache configuration, the performance metric was weighted speedup relative to an LRU managed shared LLC. The submissions were then ranked separately for private and shared caches.

Overall, the competition was a tremendous success. We received 26 papers and 35 code submissions. The submissions came from different geographic locations with 12 from Asia, 3 from Europe, and 11 from North America. Due to the large number of submissions, and the desire to have four reviews per submission, the program chair and members of the organizing committee also reviewed papers. Each reviewer was responsible for 10 papers. To ensure a fair review process, the reviewers had no knowledge of the performance ranking of the submissions. A total of 10 papers were selected for presentation at the workshop. The selection of papers was primarily based performance ranking but also on paper quality, adherence to competition rules, and a qualitative assessment of logic complexity, which couldn't be incorporated in the cost metric. The accepted papers are listed in the table of contents below. All source code, papers, and results from the infrastructure are publicly available on the JWAC-1 website so that the computer architecture community can benefit from the results. Figure 1 shows anonymous performance scores of all 35 code submissions for uni-processor and multiprocessor configurations. The winners will be announced at the workshop.

Finally, we would like to thank everyone for their hard work putting this program together. Special thanks go to the organizing committee, Alaa Alameldeen and Moin Qureshi, for taking care of the contest logistics and setup. We also thank the program committee for their conscientious evaluation of all the papers. Additional thanks go to Eric Rotenberg for running the contest web site and for JILP sponsorship. Finally, we thank Intel for their financial support for the contest.

Joel Emer, Program Chair Aamer Jaleel, Organizing Committee Chair

Figure 1 :

 1 Figure 1: This figure shows the performance of the 27 submissions on private and shared caches.

JWAC-1 COMMITTEE


Kaouthar Bousselam

Giorgio Di Natale

Marie-Lise Flottes

Bruno Rouzeyre

Evaluation of Concurrent Error Detection Techniques on the Advanced Encryption Standard

Keywords: concurrent fault detection, coding techniques, Advanced Encryption Standard.

Secure devices are used for storage and processing of confidential data. For that, they are designed with the ability to protect information against unauthorized access and intentional misuse. The digital security in such devices relies, among others, on data encryption. If encryption/decryption functions can be implemented in hardware for reasons of performances, the reliability of resulting IPs requires careful attention. Indeed, the security of the processed data may be compromised by permanent or transient faults affecting the expected behavior of the circuit.

Permanents faults due to manufacturing imperfections can be addressed before to put the chip into service in its application. However material aging is another source of permanent faults and must be addressed during the circuit life time. Moreover, several phenomena resulting in transient faults can affect the circuit behavior during its life time: natural soft (cosmic) errors and misuses. The latest can be intentionally induced by attackers with the aim of retrieving the secret information processed in secured devices. This type of attack, called "Differential Fault Analysis" (DFA), consists in inferring the secret data by comparing the results of a faulty encryption and a fault-free encryption [START_REF] Giraud | DFA on AES[END_REF].

The faults can be injected by different means such as temperature variation, clock frequency modification, exposure to radiations UV, X or visible light etc... Our study deals with detection of transient faults in a standard cryptocore namely the Advanced Encryption Standard (AES). Several error detection schemes have been proposed in the literature for this particular encryption; they rely on different forms of temporal or spatial redundancies. Here, we focus on code-based redundancy mechanisms: [START_REF] Wu | Low Cost Concurrent Error Detection for the Advanced Encryption Standard[END_REF], [START_REF] Bertoni | Error Analysis and Detection Procedures for a Hardware Implementation of the Advanced Encryption Standard[END_REF], [START_REF] Yen | Simple Error Detection Methods for Hardware Implementation of Advanced Encryption Standard[END_REF], [START_REF] Di Natale | An On-Line Fault Detection Scheme for SBoxes in Secure Circuits[END_REF] and [START_REF] Kermani | Parity-Based Fault Detection Architecture of S-box for Advanced Encryption Standard[END_REF].

Those techniques act at algorithmic, round or operation level presenting various fault detection latencies. They are first compared in terms of costs (hardware/performance overhead, power consumption). Then their capability to detect errors of different multiplicities is compared. Because none of the related works reports correlation information between the error multiplicity on observable states and the transient faults likely to affect internal signals during encryption operations, we place emphasis on error detection vs fault injection. Several experiments are conducted in order to evaluate the number of resulting erroneous bits when the AES cryptocore is affected by a fault.

We then discuss the resistance of the protection schemes against state-of-the-art DFA attacks (e.g. [START_REF] Blömer | Fault Based Collision Attacks on AES[END_REF]). The presented evaluation process shows that inexpensive AES implementations based on mathematical expressions requires expensive protection against fault attack because single fault injection results in large number of errors. Conversely, AES implementations based on look-up tables require (initaly) larger area but seam easiest to protect since single faults affecting these implementations result in a lower number of errors.

252

  Evaluation of Concurrent Error Detection Techniques on the Advanced Encryption Standard K. BOUSSELAM, G. DI NATALE, M-L. FLOTTES, B. ROUZEYRE LIRMM (Université Montpellier II / CNRS UMR 5506) Montpellier, France {bousselam, dinatale, flottes, rouzeyre}@lirmm.fr Abstract-In nowadays technologies, circuits are more and more sensitive to aging phenomenon, as well as soft errors. Furthermore several attacks that used a fault to derive secret information have been demonstrated on cryptosystems. Concurrent fault detection is thus of prime interest for such systems. The purpose of this paper is to compare several codebased concurrent fault detection schemes dedicated to the hardware implementation of the Advanced Encryption Standard. The protection schemes under comparison are either directly issued from the literature, or built from several complementary solutions for protection of the full implementation. The evaluation of these schemes is performed in terms of costs with particular emphasis on fault injection vs errors detection capabilities.