Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  Dense_Linear_Order.thy   Sprache: Isabelle

 
(*  Title       : HOL/Decision_Procs/Dense_Linear_Order.thy    
    Author      : Amine Chaieb, TU Muenchen
*)


*)
  andsection🚫elimination     \close

theoryferrante_rackoff_data.ML\>and 

begin

ML_filelangford_data.ML>
ML_filejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

context linorder
begin

lemma less_not_permute[no_atp]: "\ (x < y \ y < x)"
  by (simp add: not_less linear)

[
  " \<>x.(y \ (insert l L). y < x)\<> (<>y \in> . < y)"
       auto)  <y\iny  < \forall< }   )<> )
  "(\x. (\ by simp
🚫 (insert l L).y <x)\and(<>y \in.x<y < P x)"
  "(\x. (\text\Theorems for \open>z \forall>x x< z ( \longleftrightarrow P\^sub>-\)\<>\<>
    ([]: "existsz." for 🚫
  "(\x. (\y \ Llemmapinf_gtno_atp:"
    ( auto
  by

lemma [}. x < y)  P x)"
  by simp

textTheorems for z. x. x < z  (P x  P🚫-java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "macro" is null
lemma minf_lt[no_atp]: "\z. \x. x < z \ (x < t \ True)" 
  by auto
lemma minf_gt[no_atp]: "\z. \x. x < z \ (t < x \ False)"
  by (simp add: not_less) (rule exI[where x="t"], auto simp add: less_le)

lemma(<existsx (\forall  (insert lL).y<x  ( U. x < y)  P x)"
  by (auto simp add: less_le)
lemma minf_ge[no_atp]: "\z. \x. x (t \ x \ False)"
  by (auto simp add: less_le not_less not_le
lemma minf_eq(🚫forall  L. y < x) (<>y uU) x  ))
    (\exists.(forall\in .  )<>\forall \in>.x< <>
 minf_neq[]: "z. \.x (x \noteq> t \longleftrightarrow>True)
  by auto
lemma minf_P[no_atp]: "\z. \x. x < z \ (P byauto
  by

text simp
lemma textz.\forallx.   z  \longrightarrow>( x 🚫-🚫<>)<>\close>
  by auto
lemma pinf_lt[no_atp]: "\z. \x. z < x \ (x < t \ False)"
  by minf_lt[o_atp]: "x x z \longrightarrow>(x t \longleftrightarrow> )" 

lemma pinf_geno_atp]:"\ ( \x  
  by (auto simp add: less_lele minf_gt[no_atp:"\exists>. False"
lemma  bysimpaddnot_lessruleexIwherex""] auto add:less_le
autosimp add  not_lessnot_le
lemma (auto add:less_le
lemma minf_ge[]: "\exists>z.\x x z\ False)"
lemma pinf_P by ( simp add less_lenot_less)

lemma nmi_ltno_atp]:"t \x. \not>True \ x< t \ (\u\ U. u \byauto
lemma nmi_gt[no_atp]: "java.lang.StringIndexOutOfBoundsException: Range [0, 24) out of bounds for length 9
  byby

textopenTheorems for x.   <> ( \> P🚫+java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "nextword" is null
  [] " \in U \Longrightarrow> \False \ x t u U. u \ x"by
lemma (simp add: not_less)add not_less) (rule exI[where""],auto add less_le)
lemma pinf_ge[no_atp]: "\z. \x. z < x \ (t \ x \ True)" 
lemma  uto  simpadd less_le)
  orall>x. 🚫 \>\rbrakk>\Longrightarrow
  \forall\not>(P1\and> P2) x \and  x)\longrightarrow  (<>u\in> U u \le x"byauto
lemma  nmi_disj]: "\. \\not>P1' \P1 x (u x ;
  x.lemma pinf_neq[no_atp]: "\z. \<. \x.. z t \ True)" by auto
  (P1' \ P2'\orP2)  ( U. u )"by auto

lemma  npi_lt[no_atp]: "t \ by (simp add: not_less (rule exI[where x="t", auto simp add: less_le)
lemmanpi_gtno_atp t <in <>\forall  auto
lemma  npi_le   ( simp : less_le)
lemma[no_atp: t<  \Longrightarrowforall\not \and   x   
  no_atpt<ULongrightarrow\\exists>uuin> u)" by auto
lemma  npi_neq pinf_neq[no_atp] "z. . (x True)"  auto
lemmano_atp\forall P\and   <u< . le  auto
lemma  npi_conj[no_atp]: "\\x. \P1' \ P1 x \ (\u\ U. x \ u) ; \x. \P2' \ P2 x \ (\u\ U. x \ u)\
  ==> nmi_ltno_atp: "t \in>U \Longrightarrow> x \not>rue \<> x < t \ (\exists>u\in> U. byauto
lemma nmi_gtno_atp " \in U \forallx \not>False \ (\
  (simp:)

lemma]
  "<><
      [:t\>Longrightarrow> notFalse     \><uin  auto
by  order)

lemma[]
  "tanmi_conj[]:"lbrakkP1' \and> x\longrightarrow>\U.u <> x);
    \forall  .\forallt.l   <>t<u\longrightarrowt\notin>U <>   <>x<  < t < x y. l   <>y<u\longrightarrow t<"
   antisym_conv3strict_trans

lemma lin_dense_le  nmi_disjno_atp \forall <P1   longrightarrow<u<> >)
  "t\in \Longrightarrow>
    x.\not' P2')\and (P1 x \or>P2 \longrightarrow>(exists>u ) by
  by local.less_le_trans local.less_trans local.not_less

lemma lin_dense_ge[no_atp:
  "
    :t\>🚫x\le u)  auto
  bymetis. local<and> x >< . le "auto

lemma[:"lbrakk\x]: "\brakkP1 \and P1 x > .x\le )<xnotandx >u .x<> <

    🚫 <>.\notP1\or>' <> P1 or 2 \longrightarrow \>\in U. x\le> u" by auto
   

lemmalin_dense_neq]
  \>lu >l<t<><u U <><x <> x  u\and> t longrightarrow\forall>. l<y\and>y<\longrightarrow> yt
java.lang.StringIndexOutOfBoundsException: Range [6, 4) out of bounds for length 212
  auto

lemma lin_dense_P[no_atp
  mma  nmi_neq]" \in> U \x.\True\ x \ t \\ \u\ U. u \le>x"byauto
  "
    \forall> llu.(\foralltl t\and    \>t<> U)) <  < x and> x  u\and t  x>y.   y <and  u <> t   y"
lemma[
lemmano_atp:\>x. notP1 <>>>(<>in.\le);
   (y. l < y  y < u  P1 y) ;
   lin_dense_le[no_atp]
  t in U Longrightarrow
   l u.(<>t. <t  t < u >U)  l < x  x < u  (P1 x  P2 x)
  < (<.l<y\and y  ul> P1y < P2y)
  by blast

lemma lin_dense_disj[  \\<forall>.¬ <>P2 <>(  bylocaless_le_trans local.less_translocal)
  "\"<><xlu(<t.l<t \andt< u <> t \notin ) x \and   u\and> P1x
  u (forallt l<t < t  u < t\> )\and l  x\andx u <>tlex\longrightarrow(<> l<y <>y< longrightarrowt le y"
  
  [no_atp:
  <> <existsinU. <x)<>\Longrightarrow
  \    forallx l u. (  t\andt<u\longrightarrow t \notin   forall<>P1 \or> ')\and>(P1  orP2)<(<< U ule) by
  by

lemmanpmibndno_atp:\lbrakk><>x. \\¬andP x  \longrightarrow(<xistsu<inU. <>)\forallx\notPP🚫>(<u\>U x \> u)rbrakk
  Longrightarrow <forall\>x.\not \and>\notPP\and>  < \exists>uU <>u'<>.u le )
  by autolemma  npi_ge[no_atp:" > U >x. \True \ t \ x \ (\ujava.lang.StringIndexOutOfBoundsException: Range [126, 4) out of bounds for length 212

lemmafinite_set_intervals[no_atp]:
  assumes l> l u. (🚫[no_atp] t Longrightarrow \x not >x t<><\\in .x leu byy auto
     lemma[]
    "<[no_atp] \forallx.otP1 \and P1 x (>\U x P2 (\existsin Ux le> u>
    and linS: "\ S"
    and uinS: "u \P2 x uin>>U x <> ) by auto
    and (forally l < y\and y<u < P2 y)<>\Longrightarrow
    and  \Longrightarrow   \<forallx l u.\ltand<\>tnotin)<> l  x < x  <and P1   x)
nd  \\longrightarrow \forallyl y\>   u\> P1y\and> y)
    showsin U <Longrightarrow>
proof -
  let?Mx  { y\> S and  < x"
  let? = {y\in>S \and>x 
  let?= Maxrallxlu \forallt.l< t \and>  u \notin> U <nd>l  x \and> x   < P1x
M"
  have" by (metis antisym_conv3 orderstrict_trans
    by allx lu \>. l< <>t<u \>\notin U \and> l < \> x  <>P2 x
  have" Mx"
     fSfinite_subset byauto
  from lx linShave linMx "l \ ?Mx"
by blast
    then
    byblast
  have xMS ?\subseteqS
    java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
finitexM
    using
  from : xjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23

  then have xMne    <> lu \forallt   t\and t      and"u <>S
    blast
\x\in .l<lex
    usingfMx byauto
   
lemma 
    \forall". \<>S x}
      by auto
  thenlin_dense_conj]
     MxS blast
  have ? <>?"
    using  \forall>  xM
  thenhavebinShaveMxS:"Mx \<> S
    usingby  \forall>xl .\>.l  t <>t<unotin U and <x\and  <u\and P1x < P2x)
 \> a yand ? longrightarrowy<otinS"
    usingusing finite_subset by auto
  from binS noyax pxshow
        by blast
qed

finite_set_intervals2no_atp]:
sumes   blast
   lx l >
    byforall>x lu 🚫 u <>U)<> <x <nd x<u 🚫
     linS:l\>S
    and\forall>    usingfS by auto
     fS finite"
    and lS:"
    and
  shows"\existss by blast
    <>\forall>\not MP\>\not> <>  longrightarrow\<u\in> U. \in>U u <e x \and>x \le>u'"
  by metislocalneq_le_trans

  lemmafinite_set_intervalsno_atp:


section \\<openThe classicalQE afterafter Langford fordense linear ordersorders\close>

context    usingOF  Mxnebysimp
beginandlinS:"\ S

lemma fS"finite S""
  by autodest:dense

lemma [? in?"
  proof
    and <>   then havebinS "b\S""
    andusing xMSby 
    and ?a ="Max?Mx
" using Mxne fxM local.linear xMne by auto
proof
  assume H: "\x. (\y\L. y < x) \ (\y\U. x < y)"
  thenthen obtain x where"\forall>y\inL.. y < x" and xU: "\y\U. x < y"
    by 

    .dual_order 1 uxL xU by blast
  then    fS  auto
      andlx: "l x"
      then haveMxne:"?Mx \
  let  ""
  let :finite
    and :  \forall<inSl\> 
    andSu ">xin .x
  shows(\in)or<exists\in.. <<exists <in.(forall<a<  < y < b <longrightarrowy <> S <x and bPx)
    by auto
  from   from uinSwhereP""OF pxlxxu uinSfSlS Su
        byblast
  with
      haveax
  fromusingMxne fMx  auto
    by
  moreover fromth4 th2th2 have"\forall>u > U. w< uh2 have \forallu
    [fMxMxne by
    then
    lemma: y x  y <>y <z}={ \longleftrightarrow<>x <z"
qedby  Min_inOF fxMxMne] simp

lemma xMSby 
  assumes
    andfL:finite
  shows ">x. (y )\and>> (y \in> {. x < y))) = Truejava.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 94
usinglocal. by

lemmashows\>\forall Ly<)\and(forall>U   )=\forall )
  assumes ne: U <noteqjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
    and fU finite
  showsbinSnoy  px showthesis
proof" u if l "lin" and u " \>"forl u
  fromassumes:"
by
  from e   \>> in U Min le x
     simp
th have\>\inU M x
    by (auto: less_le_trans
  thenML Max
    by
qed

mma[:\>ax noteqnoteq> t \exists>a)t<x
  usingfrom fU neUhave"MU \in>U"and th2:"\ "

  fromth1th2 Hhave "L< ?MU"
  le_less  less_not_permute

lemma
    from  th1 have>in  w"

atp
   show(\L  and\\>inUx<y
    qed
    and:

declare fL L
declare dlo_simps "<>x. (\forall>y \ L y (

end

Move HOL - with theconj_aci_rulein. *
lemmas    fU" Ujava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22

lemmas weak_dnf_simps[no_atp] = simp_thms 

lemma simp
  "(<> ( \andQ <>\notP< not
  (not   l  "if l: "l\in and" U or l u
  P<Q\(notthenshowthesis
  "P\longleftrightarrowjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
   [ t byauto
  by dlo_simps] order_refl not_less java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76

lemma auto
  mmaatoms[]:

as[    andless_eq:  

langfordclose
method_setup
    axiomlangfordqe dlo_qe_bndsdlo_qe_bnds dlo_qe_nolb  gather:gather_startgather_simps: 
declareare[java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31


sectionopendenselinearordersyieldQE  arithmeticoverordered\>



localelinorder_stupid_syntax=linorder
begin

notation
_\openP<and Q))  (\not> P\r ¬
l  \"P <Q <>\not P)
  <qed\:"\exists>(x::'a). t x"
  lessbyblast+

end

locale linorder_no_ub = linorder_stupid_syntax +
   blast


lemma
usingbyauto

text Scan SIMPLE_METHODoLangford
lemmapinf_conj:
  assumes:"x. z1 \ x \longrightarrow>> (P1 x \longleftrightarrow
     " ((=): a \
  shows<.forallxz<sqsubset  x longrightarrow(P1x \\and x))\longleftrightarrow P1🚫begin
    \'(>)

lemma
  assumes linorder_no_ub linorder_stupid_syntaxjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
    and:"<>z2.\forall>x.z2 \ x \ ((P2 x \longleftrightarrow>>P2java.lang.StringIndexOutOfBoundsException: Index 107 out of bounds for length 107
shows\.<> z \>\longrightarrowx( x<orP2x \longleftrightarrow>P1 orP2)
  by (metis ex1 ex2 local.max.strict_boundedE  (<notusinggt_ex auto

lemma pinf_exno_atp]
  assumes blast
    andlemmas[]] nnf_simps
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    gt_exp1byauto

end

text<Linear without bounds<java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53

locale
  and "existsz2 .z2\<> <> (P2 x\longleftrightarrow P2)
begin

java.lang.StringIndexOutOfBoundsException: Range [0, 5) out of bounds for length 0
    showsexistsPx


text
lemma[:
mesex1 \existsz1. \forallxx \sqsubsetz1>(x\longleftrightarrowP1"
     ex2existsz2.  z2  (P2 x  P2')"
  shows linorder_no_lb = linorder_stupid_syntax +
  by (is ex1 ex2 locallocal.min_less_iff_conj

lemma minf_disjbegin
  
    andex2\exists.\forallx<>longrightarrow  longleftrightarrowjava.lang.StringIndexOutOfBoundsException: Index 107 out of bounds for length 107
  showsexists.<  sqsubsetz longrightarrow x\orP2 > P1 P2"
  by ( ex1 .min_less_iff_conj

lemmao_atp
  assumes ex"<existsz \forallx x \sqsubset\longrightarrow (  ongleftrightarrow"
   :
    bymetisex1 ..)
  using lemmaminf_disj]]

end      ex2 \>.<forall. x🚫 '


locale[no_atp:
   ex "> <>x z
   between_less " x lessx betweenx y andless x y "
     between_same" x = x"
begin

sublocale
proofunfold_localestextopen orderwithout upperbounds<
locale  lessx 🚫   java.lang.StringIndexOutOfBoundsException: Index 101 out of bounds for length 101
e
  13

java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
   lin_denseforalluu<   andtsqsubsetlongrightarrownotin\>x<x\sqsubset u <>P x
      < \forally  sqsubset>y \and>y<>u longrightarrow y "
   3
  then minf_ex]
qed  shows<uin<> <in.Pbetween uu"

mmarinf_Uno_atp
    byjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
t <sqsubsett<and u   U \> lsqsubset \and🚫
\longrightarrow\forall> l < y\and  sqsubset u<longrightarrowP  java.lang.StringIndexOutOfBoundsException: Index 100 out of bounds for length 100
    and "forall>x \ \exists\in>U.\exists>'\in>U.u\sqsubseteq>x \and>x \u'"
    :    using by
    haveuinM"\in> UU"
proof
  from     fUUneUnejava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24

  fromjava.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
  using fUby
by
  from uUfromorder_transOFth ux lx " \ x" 
     autouU by
     linorder  U
  let  nmpiU"forall>x.\not> \ P \longrightarrow ( U.\exists>' \ Uu u))
  have:"l < and nmi: "not" and npi: "notPP  and\exists>  Px"
    shows"u\t1\in U  >U" "U <forall t1s> \> yy\sqsubset \longrightarrow\notinU""t1 " x
  haveproofbyblast
    using Unebyjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
    obtainuu uU\U and' " \in\in U ux:u"andsqsubsetequ
    using  
have 
    usingthen have t1t2 " \ t2"
  have:"l\sqsubseteq u"
    using?  "linorder.Min less_eq U"
  from    from between_lesslet u=. less_eq
  then thesis
    usinguU'Une Muby simp
  
  from[[ P", px lx xulx xu linM uinM fU lM Mu]
  consider u where "u\in U l
    t1 wheret1
    byhaveMu:"t\in> U. t\ ?u"
    assumes:" using Une fU byauto
  prooflin_dense: <x  .. sqsubset andt<u\longrightarrow><sqsubsetx<  <u\> 
show
       and  \\>\and>Px <>\existsu<in\sqsubseteq xjava.lang.StringIndexOutOfBoundsException: Index 107 out of bounds for length 107
  next
    shows "<>x P x)= (MP \or> PP \\ ( U. \u'\ U. P (between u u')))"
    :         (isE D)
   order 
    between t1 "
from  have :"t1 \
    w?  px E
       2  proof
  qed
qed

theorem fr_eq
  assumes     case show byblast
     andlin_dense <x   <tlsqsubsett\andtsqsubsetu ongrightarrowt\>U\and  andx\ux
     \longrightarrow> (<forallby order 
 nmibnd \forallx. ¬MP\and>P  <longrightarrow> (      fromOFnmibnd ]
    and"> \not\notPP > (
    and      from rinf_UOFfU nmpiU<opennmpiUopennot>MP>\pen\not>PPclose ] show ?thesis
  s "(\exists>x>x x))= (MP \(\exists>u\in U.existsu
         is    qed
 
  fr_eqno_atp
  usinggt_ex. mi 
    consider
    then show ?
    
      and<x<>MP\and x <> \U\sqsubseteqx)
  ? 
    
       
         "\ PP< \existsu \in>U.\lemmas nmi_thms[no_atp = nmi_disj nmi_neq nmi_lt nmi_le nmi_gt nmi_genmi_ge nmi_P
      have nmpiU("E =lemmas npi_thms[no_atp npi_conj npi_disj npi_eqnpi_neq npi_lt npi_le npi_le npi_gt npi_genpi_P
      from lin_dense_thms[]proof 
        byblast
    qed
  qed
  showlemma ferrack_axiomno_atp:"constr_dense_linorder less_eq less between"
    ( constr_dense_linorder_axiomscase
qed

lemmas atoms      case2
lemmasshows "(less : 'a \ _)"

lemmas[  nmi_conjnmi_disj nmi_eqnmi_neqnmi_ltnmi_lenmi_gt nmi_P
lemmas 
lemmas ferrack_axiom[ minf  pinf pinf_thms

lemma :fr_eq:]
using localgt_exlocal.lt_ex mipi thatby blast

lemma atoms minf_thmsno_atp] 
  shows" less :a <> _
  fun generic_whatis phi=
    and "TERM ((=) : 'a \

declare[no_atp =lin_dense_conj lin_dense_disjlin_dense_eq  lin_dense_le lin_dense_gelin_dense_P
nmi_thms:npi_thms:
         Thm tof

declaration<
let
  fun simps phi  :: aifThmterm_ofxaconvy thenEq
  fungeneric_whatis phi=
    let
      declare .term_ofx   Ferrante_Rackoff_Data
      elseFerrante_Rackoff_DataNox
     Thmif .could_unify(,lt 
          🍋 le] Thmterm_ofx  ythen.
            if.term_of x aconv y thenFerrante_Rackoff_DataEq
            Thmterm_of  Ferrante_Rackoff_DataFerrante_Rackoff_Data.Nox
       |\^Const_\open> java.lang.StringIndexOutOfBoundsException: Range [33, 17) out of bounds for length 54
            if.term_of xaconvy thenFerrante_Rackoff_Data.NEq
             elseifThm.term_ofx aconv thenFerrante_Rackoff_Datajava.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
        byz =ifTermcould_unifyb  
                      x  aconvy  Ferrante_Rackoff_DataNEq
                 else unify(,) 
                      .simpset_ofput_simpset   .simpsphi)
                 else TermelseFerrante_Rackoff_Data
                     Ferrante_Rackoff_Datafuns{ ferrack_axiom
                     else if.term_of aconv z  Ferrante_Rackoff_DataGe
                     elseelseif Thmterm_of aconvzthen.
                 else
       
end
  fun ss phi       <>
    simpset_ofput_simpsetctxt|. simpsphi)
in<> "and Rackoff's algorithm for quantifier elimination inalgorithm for quantifier elimination in dense linear orders"
  Ferrante_Rackoff_Data
    
sub <penFerrante   Rackoffalgorithmoverordered java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "brackoff" is null


endlemma:neg_prod_sum_lt:

ML_file"< 0

method_setup=\open
  Scan.lemma pos_prod_sum_lt
  assumes "fixesc : "shows   0 \longleftrightarrow   -/)*java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63


subsectionFerrante and Rackoff algorithm 

lemmalemma lemmaneg_prod_le
 c:':"
    assumesc <
  showsshows " ** x \le>0\longleftrightarrow x \ge>>"
    metisassms  mult_neg_negzero_less_mult_pos

lemma: ::
  fixes c : "'a:linordered_field"java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
   c > "
  shows "c * x < 0 der_not_less mult_le_0_iff by auto
  

lemmaneg_prod_sum_lt:
  fixes c :: "a::linordered_field"
     "c < 0"
  shows  fixesfixes :"a:ordered_ab_group_add"
  using  auto  : multcommutedivide_simps)

lemma
    c ':inordered_field"
  assumes fixes c ::':linordered_field
x  0\longleftrightarrow< -/ t
automult)

lemma:
  fixes :
  shows":linordered_field"
  less_diff_eqwhere xand  c0  simp

     z_prod_eqjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
  fixes : ""'a:linordered_fieldjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
   "c 0
  showsusingassms bysimp
  using

lemma
  fixesc  "a:linordered_field""
  assumesfixesc :a:"
  shows   c 0
  usingshows" * + \longleftrightarrow x=(-/c* t"

lemma
  fixes:
  assumesc<
  shows "c shows "x +  0\longleftrightarrow=- t"
   assmsby( simp:  shows"+t\le>0< \

lemma pos_prod_sum_leinterpretation:
  fixes : "'a::linordered_field"
c  0
ghtarrowunfold_localesauto simpadd  lt_ex
  using  usingusing \open

lemmasum_le
 rlier []_=false
   er(: xy 
using[ a= x andbt  c=]=]by

 nz_prod_eq
  
  assumes "c \ red_ab_group_add"
  shows"c x = 0 = 00
   else

lemma nz_prod_sum_eqinterpretationdest_fracct=
  fixes
   "
  showsRatmake>
   assms byfun  _ false
   t=Rat. (sndHOLogicdest_number t)
lemma java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  fixesx :'a:ordered_ab_group_add
  shows "x Thm.term_of x ("*t(  .),     y 
   where  andbtand]by

interpretation>fun ctjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
  "else (else ("",[]
  byunfold_localesautosimp add gt_ex

 <java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19

    [   
    | earlierh: x y =
        
val thm
funearlier_ord x,y)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
    Nox]
   earliervs( y thenLESS
    else
val     else Nox[
fun<Const_<times fory< 
  case Thm  if aconvterm_ofthencx[Thmdest_arg1ct
    \^><>.divide for a bclose
st_number, (.dest_number
  |t= ifaconvThmterm_ofx then(x[)else ""[)
  | t => xnormalize_conv ] =Thmreflexive

    {s}
   m { sum_eq
      y aconvThmthen(cx+[ .dest_arg1 Thmct
     else" ("]
|^<> _ for 🚫valpos_prod_sum_le mk_meta_eq{ }
if .term_of Thmx  "x+t"[Thm ct
     elseNox]
|^><times for y<>>
     else. Thm  cz cjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
     z_prod_sum_eq = ( negthenelsepos_prod_sum_ltcth
 t=if t  Thmterm_ofx then(x[ else"ox"]

java.lang.StringIndexOutOfBoundsException: Range [5, 6) out of bounds for length 5
val   {sum_lt
val sum_le = mk_meta_eq|"+,[] (case whatis x (Thmest_arg1 ct)of
valsum_eq  thm
val  {thmneg_prod_sum_lt
val        dest_fracc
prod_sum_le mk_meta_eq{ neg_prod_sum_le
pos_prod_sum_le=mk_meta_eqthm}
val   cr @
@{ pos_prod_lt}
al =mk_meta_eq @{ neg_prod_le
val              Semiring_Normalizersemiring_normalize_ord_conv ctxtearlier_ord)))

val  =Thmequal_elimThm
in   java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
functxt]   .ct
|       in
   |         mk_judgment
   \open>less   ^>\openzero_class_closeclose>
    case  (.dest_arg1 
    (*+,[,)java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
       let
                val =.implies_elim Thm' (Thm.ctyp_of_cterm x] map [c,]
        valclt .dest_fun2
        val cz =val =th
        val =cr 0
        val        . ct              Semiring_Normalizer ctxtearlier_ord)))th
               
        (if neg Thm  .apply c cz
                   (casewhatis xThm ctof
         Thm.cthpTrueI
val  Thm x
 neg neg_prod_sum_lt pos_prod_sum_lt 
        val rth = Conv.fconv_rule (Conv        val cr  dest_fracc
                   Semiring_Normalizersemiring_normalize_ord_convctxtearlier_ord
      inend
    |(x+               .java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
       let
           Thmapplyapplycltccz
         th=instantiateSOME]SOMEx  ]sum_lt
        valcthThm Thmsymmetric)TrueI
                                           .  ())java.lang.StringIndexOutOfBoundsException: Index 95 out of bounds for length 95
       in
    |(c*c]=
       valrthConv arg_conv(Convbinop_conv
         cr =dest_frac
        val clt = Thm  =.       in 
        val        val    | c*[)=
        valneg cr 0
        val  Thm 
               valcz   dest_argct
                  ifnegthen. (.apply c cz
                    else. Thm clt ))
        valvalczThm ct
         th=Thmimplies_eliminstantiate SOMEctyp_of_cterm   c
             val=Simplifier ctxt
val negthen. (hmapplycltc 

    valcth  Thm( neg thenneg_prod_sum_le  )cth


|valend
tisThm ctof
    "xt,[,t >
       let
        val Thm.  
         Thm java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
        val cr = dest_frac    |c"[]) >
  .  ^>\openless<>
val  =Thm ct
        valneg=  @
val          Srewrite
ic
     ifthenThmapply(Thm cltc
            elseThm(.apply  )
          Thm(.  
        valThminstantiate[                  ((if neg (ifthen Thm. (. clt 
                 (ifnegthen neg_prod_sum_leelsepos_prod_sum_le cth
           . Conv (.
   .(Thm'[ Thmctyp_of_cterm x)](map SOME [cx)
       +,t 
    |  val  java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
       
                   . Conv^\openHOL.   forConst_\open>zero_class._close
        valth Thm[SOME][OMExSOMEt 
        val end
  . ctxtearlier_ord) 
         rthend
            val ceq  Thm.dest_fun2 ct
       
           Thm Thmtyp_of_cterm
                 ceq Thmdest_fun2ct
        val  dest_fracc
          Thmcterm_of\Const<lessT<
        val cz Thm..dest_argct
         cr <0
        val cthp=Simplifier. ctxt
               (.mk_judgment
                  ( negval  . ThmcthpTrueI
      applyThm cltcz )
         cth=Thmequal_elimThmsymmetriccthp 
vrth
                  if          T Thm x
        valend
      in rth endlocal
_ . ct)

|<Const_HOLval T = java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 35
   (   Thmctof
        valopen  a b<>=
    ca)= .dest_binop
        val T =       val(apply^ (.apply(Thmapply c cz)
 val  Thm. (Thmsymmetriccthp)
valceq         nth=Conv
                 .
        val   Simplifierrewritectxt
            (th Thmnth ctxt  (Thmrhs_ofnth
             
        val cth    less_iff_diff_less_0  @ "
         th .
       valT Thmctyp_of_cterm ca
       valss=simpset_of<>       valnth.fconv_rule
                   (.semiring_normalize_ord_conv 
                    Semiring_Normalizersemiring_normalize_ord_conv put_simpset  vs)th
     "+"[)=
       
        java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
        th Thm[T] ,SOME sum_eq
         =Thm.ctyp_of_ctermca
              (Semiring_Normalizer.       val  Thmtransitiventh T SOME caSOMEcb]eq_iff_diff_eq_0
       rthjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
    | ("c*x",[c]letSemiring_Normalizer (ssctxtearlier_ord) th
       let
       val th=Thm SOMET [ ca cb le_iff_diff_le_0
        val (. Conv<.   \closeclose=> Convarg_conv (field_isolate_conv  ctxt)
         ceq Thmdest_fun2
          Thmdest_arg ct
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
            HOLogic
             (Thm val  fun    =
cthThm. (symmetriccthp)
        val rth = Thm        th     <<Const_open.  for y close >
                 (Thm'(.rg_conv Conv.arg1_conv
       Ferrante_Rackoff_DataNox
     _ Thm. ct;
end

local
  if.funclassfield_whatis 
  le_iff_diff_le_0  thm"
  elseFerrante_Rackoff_DataNox
       ^<>. yz\close=
inThm xaconv y then.
funelse Thmterm_of x zthen.Ge
  🚫 Ferrante_Rackoff_Data.Nox
   let      = Ferrante_Rackoff_DataNox
       val =hm ca
        phictxt 
       valnth=.
  arg_convConvarg1_conv
              (>fold Ferrante_Rackoff_DataNox
       val
   in
|. thmclass_dense_linordered_fieldjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
   let
\close
       val th funend
       valnth  Convfconv_rule
         (Conv.arg_conv(Convarg1_conv
              (    > fold Splitteradd_split[{thm""} @thmsplit_max,@thm"])
       val  =Thm(  Thmrhs_of)
   in end

| <Const_>\openHOL.  forab<> =
   let val java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
       val T = Thm.ctyp_of_cterm ca
       val th = Thm.instantiate' [SOME T] [SOME ca, SOME cb] eq_iff_diff_eq_0
       val nth = Conv.fconv_rule
         (Conv.arg_conv (Conv.arg1_conv
              (Semiring_Normalizer.semiring_normalize_ord_conv (put_simpset ss ctxt) (earlier_ord vs)))) th
       val rth = Thm.transitive nth (xnormalize_conv ctxt vs (Thm.rhs_of nth))
   in rth end
🍋Not for 🍋HOL.eq _ for a b => Conv.arg_conv (field_isolate_conv phi ctxt vs) ct
| _ => Thm.reflexive ct
end;

fun classfield_whatis phi =
 let
  fun h x t =
   case Thm.term_of t of
     🍋HOL.eq _ for y z =>
      if Thm.term_of x aconv y then Ferrante_Rackoff_Data.Eq
      else Ferrante_Rackoff_Data.Nox
   | 🍋Not for 🍋HOL.eq _ for y z =>
      if Thm.term_of x aconv y then Ferrante_Rackoff_Data.NEq
      else Ferrante_Rackoff_Data.Nox
   | 🍋less _ for y z =>
       if Thm.term_of x aconv y then Ferrante_Rackoff_Data.Lt
       else if Thm.term_of x aconv z then Ferrante_Rackoff_Data.Gt
       else Ferrante_Rackoff_Data.Nox
   | 🍋less_eq _ for y z =>
       if Thm.term_of x aconv y then Ferrante_Rackoff_Data.Le
       else if Thm.term_of x aconv z then Ferrante_Rackoff_Data.Ge
       else Ferrante_Rackoff_Data.Nox
   | _ => Ferrante_Rackoff_Data.Nox
 in h end;
fun class_field_ss phi ctxt =
  simpset_of (put_simpset HOL_basic_ss ctxt
    |> Simplifier.add_simps ([@{thm "linorder_not_less"}, @{thm "linorder_not_le"}])
    |> fold Splitter.add_split [@{thm "abs_split"}, @{thm "split_max"}, @{thm "split_min"}])

in
Ferrante_Rackoff_Data.funs @{thm".ferrack_axiom"}
  {isolate_convs = classfield_whatis simpset=}
end
<close

end

Messung V0.5
C=100 H=97 G=98

¤ Dauer der Verarbeitung: 0.31 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge