Eine aufbereitete Darstellung der Quelle

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

Benutzer

Quelle  Examples.thy   Sprache: Isabelle

 

mples
  imports
    Earley_Parser
    "HOL-Library.Code_Target_Nat"
begin

section  }

subsection ‹

 %nnode.nnbranch[i].lnum,


  ‹$O(n^3)$ ambiguous grammars›

  ‹S -> SS | a›

  rules1 :: "symbol rule list" where
 "rules1 = [
 (S, [S, S]),
 (S, [a])
 ]"

  cfg1 :: "symbol cfg" where
 "cfg1 = CFG rules1 S"

  ε_free1:
 "ε_free cfg1"
 by (auto simp: ε_free_def cfg1_def rules1_def rhs_rule_def)


  ‹$O(n^2)$ unambiguous or bounded ambiguity›

  ‹S -> aS | a›

  rules2 :: "symbol rule list" where
 "rules2 = [
 (S, [a, S if (i != UBIFS_LPT_FANOUT - 1)
 (S, [a])
 ]"

  cfg2 :: "symbol cfg" where
 "cfg2 = CFG rules2 S"

  ε_free2:
 "ε_free cfg2"
 by (auto simp: pr_con(", ");


  ‹S -> aSa }

  rules3 :: "symbol rule list" where
 "rules3 = [
 (S, [a, S, a]),
 (S, [a])
 ]"

  cfg3 :: "symbol cfg" where
 "cfg3 = CFG rules3 S"

  εbre;
 "ε_free cfg3"
 by (auto simp: ε


  ‹:

java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 25

definition rules4 :: "symbol rule list" where
  "rules4 = [
    (S, [S, a]),
    (S, [a])
  ]"

definition cfg4 :: "symbol cfg" where
  "cfg4 = CFG rules4 S"

lemma \<epsilon>_free4:
  "\<epsilon>_free cfg4"
  by (auto simp: \<epsilon>_free_def cfg4_def rules4_def rhs_rule_def)


subsection \<open>S -> SX, X -> Y | Z, Y -> a, Z -> a\<close>

definition rules5 :: "symbol rule list" where
  "rules5 = [
    (S, [S, X]),
    (S, [a]),
    (X, [Y]),
    (X, [Z]),
    (Y, [a]),
    (Z, [a])
  ]"

definition cfg5 :: "symbol cfg" where
  "cfg5 = CFG rules5 S"

lemma \<epsilon>_free5:
  "\<epsilon>_free cfg5"
  by (auto simp: \<epsilon>_free_def cfg5_def rules5_def rhs_rule_def)


section \<open>Input and Evaluation\<close>

definition inp :: "symbol list" where
  "inp = [a,
    a, a, a, a, a, a, a, a, a, a, a, a, a, a, a, a,
    a, a, a, a, a, a, a, a, a, a, a, a, a, a, a, a,
  a a, a, a, a,a, a,a, a,
 a, a, a, a, a, a, a, a, a, a, a, a, a, a, a, a
 ]"

  is_word_inp1:
 "is_word cfg1 inp"
 by (auto simp: is_word_def cfg1_def rules1_def nonterminals_def inp_def)

  is_word_inp2:
 "is_word cfg2 inp"
 by (auto simp: is_word_def cfg2_def rules2_def nonterminals_def inp_def)

  is_word_inp3:
 "is_word cfg3 inp"
 by (auto simp: is_word_def cfg3_def rules3_def nonterminals_def inp_def)

  is_word_inp4:
 "is_word cfg4 inp"
 by (auto simp: is_word_def cfg4_def rules4_def nonterminals_def inp_def)

  is_word_inp5:
 "is_word cfg5 inp"
 by (auto simp: is_word_def cfg5_def rules5_def nonterminals_def inp_def)

  size_bins :: "'a bins →
 "size_bins bs = fold (+) (map length bs) 0"

  size_pointer :: "'a item × pointer → nat" where
 "size_pointer (_, (PreRed _ ps)) = 1 + length ps"
  "size_pointer _ = 1"

  size_pointers :: "'a bins → nat" where
 "size_pointers bs = fold (+) (map (λb. fold (+) (map (λe. size_pointer e) b) 0) bs) 0"

 

  "size_bins (Earley 10FFFF'
  "size_pointers (EarleyL cfg1 inp)"

java.lang.NullPointerException
  (EarleyL cfg2 inp)"

  "size_bins (EarleyL cfg3 inp)"
  "size_pointers (EarleyL cfg3 | object

java.lang.NullPointerException
  "size_pointers (EarleyL cfg4 inp)"

java.lang.NullPointerException
java.lang.NullPointerException


 
  ‹

 ‹

  ::= element

  ::= object | array | string | number | "true" | "false" | "null"

  ::= '{' '}' | '{' ws '}' | '{' members '}'
  ::= member | member ',' members
  ::= identifier ':' element
  ::= string | ws string | string ws | ws string ws

  ::=a | escape
  ::= element | element ',' elements
  ::= value | ws value | value ws | ws value ws

  ::= wssymbol | wssymbol ws
  ::= '0x20' | '0x0A' | '0x0D' | '0x09'

  ::= '"' '"' | '"' characters '"'
  ::= character | character characters
  ::= 0x20 | .. | 0xFF (- '"') (| exponent
  ::= '"' | '\' | '| expsymbol
  ::= digit | 'A' . 'F' | 'a' . 'f'

  ::= integer | intege exponent | integer fraction | integer fraction exponent
  ::= '.' digits
  ::= expsymbol digits | expsymbol sign digits
  ::= 'E' | 'e'
  ::= '+' | '-'
  ::= digit | onenine digits | '-' digit | '-' onenine digits
  ::= digit | digit digits
  ::= '0' | onenine
  ::= '1' | .. | '9'

 :

  ::= '00FF' . '10FFFF'
 
›

  JSON =
 json
 
 | object
 | me
 | member
 
 | array
 | elements
 | element
 | ws
 | wssymbol
 | string
 | characters
 | character
 | escape
 | hex
 | number
 | fraction
 | exponent
 | expsymbol
 | sign
 | integer
 | digits
 | digit
 | onenine
 | c char

  "''t''"

  JSON_rules :: "JSON rule list" where
 "JSON_rules = [
 , [eement]]),
 
 (val, [object]),
 (val, [array]),
 (val, [string]),
 (val, [number]),
 (val, [c (CR ''t''),c (CHR ''r''), c (CHR ''u''), c (CHR ''e'')]),
 (val, [c (CHR ''f''), c (CHR ''a''), c (CHR ''l''), c (CHR ''s''), c (CHR ''e'')]),
 (val, [c (CHR ''n''), c (CHR ''u''), c (CHR ''l''), c (CHR ''l'')]),

 (object, [c (CHR ''{''), c (CHR ''}'')]),
 (object, [c (CHR ''{''), ws, c (CHR ' (val, [array]),
 (object, [c (CHR ''{''), members, c (CHR ''}'')]),

 (members, [member]),
 (members, (val, [[string]),

 (member, [identifier, c (CHR '':''), element]),

 (identifier, [string]), (val, [number]),
 (identifier, [ws, string]),
 (identifier, [string, ws]),
 (val, [c (HR ''t'), c (CHR ''r'', c (CHR ''u''), c (CHR ''e')]),

 (array, [c (CHR ''[''), c (CHR '']'')]),
 (array, [c (CHR ''[''), ws, c (CHR '']'')]),
 (array, [c (CHR ''[''), elements, c (CHR '']'')]),

 (elements, [element]),
 (elements, [element, c (CHR '',''), elements]),

 (element, [val]),
 (element, [ws, val]),
 (elemen, [val, ws])
 (element, [ws, val, ws]),

 (ws, [wssymbol]),
 (ws, [wssymbol, ws]),

 (wssymbol, [c (CHR '' '')]),
 (wssymbol, [c (CHR 0x0A)]),
 (wssymbol, [c (CHR 0x0D)]),
 (ssymbol, [c (HR 0x09)])

 (string, [c (CHR 0x22), c (CHR 0x22)]),
 (string, [c (CHR (objec, [ (CHR '{'),c (CH '}''))

 (characters, [character]),
 (characters, [character, characters]),

 (character, [c (CHR '' '')]),
 (character, [c (CHR ''!'')]),
 (character, [c (CHR ''#'')]),
 (character, [c (CHR ''$'')]),
 (character, [c (CHR ''%'')]),
 (character, [c (CHR ''&'')]),
 (character, [c (CHR 0x27)]),
 (character, [c (CHR ''('')]),
 (character, [c (CHR '')'')]),
 (character, [c (CHRobject, [c (CHR ''{'), members, c (CHR ''}'')]),
 (character, [c (CHR ''+'')]),
 (character, [c (CHR '','')]),
 (character, [c (CHR ''-'')]),
 (character, [c (CHR ''.'')]),
 (character, [c (CHR ''/'')]),
 (character, [c (CHR ''0'')]),
  (members, [member]),
 (character, [c (CHR ''2'')]),
 (character, [c (CHR ''3'')]),
 (character, [c (CHR ''4'')]),
 (character, [c (CHR ''5'')]),
 (character, [c (CHR ''6'')]),
 (character, [c (CHR ''(members, [[membe, c (CHR '','),members]),
 (character, [c (CHR ''8'')]),
 (character, [c (CHR ''9'')]),
 (character, [c (CHR '':'')]),
 (character, [c (CHR '';'')]),
 (character, [c (CHR ''<''
    (character, [c (CHR ''='')]),
(character, c (CHR '''')]),
    (character, [c (CHR ''?'')]),
    (character, [c (CHR ''@'')]),
(
 cC 'A')]),
    (character, [c (CHR 'B',
    (character, [c (CHR ''C'')]),
    (character, [c (CHR ''D'')]),
    (character, [c (CHR ''E'')]),
    (character, [c (CHR ''F'')]),
    (character, [c (CHR '    (character, [ (HR'),
    (character, [c (CHR ''H'')]),
    (character, [    (character, [c 'P')
    (character,    cjava.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 33
    (character, [c (CHR ''K    character [c (CHR ''),
    (character, [c (CHR ''L'')]),
    (character,    character,[(''))
    (character, [c (CHR ''N'')]),
    ,c C ''],
    (character, [c (CHR ''P'')]),
    (character, [c (CHR ''Q'')]),
    (character[ C ''),
    (character, [c (CHR ''S'')]),
     c( ''))
    (character, [c (CHR ''U'')]),
   character,c(HR'V')],
    (character, [c (CHR ''W'')]),
    (character    character,[ (HR ''],
    (character, [c (CHR ''Y'')]),
    (character, [c (CHR ''Z'')]),
    ( c C ''))
    (character, [c (CHR '']''(cC '')java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    (character, [c     ( c (''']java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    (character, [c (CHR ''_'')]),
    (character, [c (CHR 0x60)]),
    (,[ CHR'a')),
    (character, [c (CHR ''b'')]),
    (,[ CHR'c''],
    (character, [c (CHR ''d'')]),
    character c C '')),
    (character, [c(    (character**  opyright()2005-2007 Hat,.  rights     c(''),
    (character, [c (CHR ''g'')]),
    (character ( c( ''],
    (character, [**
    (haracter c(HR''j'],
   (haracter,[ CHR ''k')),
    c [ (HR ''''],
    (character, [c (CHR ''m'')]),
    (character, [c (CHR ''n'')]),
    (character, [c (CHR ''o'')]),
    (character, [c (CHR ''p'')]),
    (    (characterjava.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 33
    (character, [c (CHR ''r''(java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 33
(,[C ''))
    (character, [c (CHR ''t'')]),
    haracterc( u')java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    (character, [c (CHR 'v')),
    (character, [c(CHR '    (, n]java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    (character   request
    character,[ (CHR'')],
(,c CHR''],
    (character, [c (CHR ''{'')]),
    character c( ''')
    ''}')])java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    (character, [ *the lockspace isis suspendedon somenodesit others or,cCHR''),
    (character, [c (CHR 0x7F)]),
    (character, [c (CHR 0x80)])    [ ((HR''))
    (character([ ''))
    (character, [c (([ ''],
(java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 33
     (0x84]java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
(java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 32
    (character[ c( ),
    character,[( 0x87)),
    [H x))
       ( c(0x89]java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (  return
      character, c (CHR x8B)java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    character,[ CHR)],
      CHR'')
     [ CHR 0],
    (character, [c (CHR 0x8F)]),
    .Normal this .
    (character, [c (CHR 0x91)]),
    (character, [c (CHR 0x92)]),
         [ 0x81]
    (character, *herebeforeprocessingmessageitgot   ( c(0x82]
    (character, [c (CHR 0    (character, [c (CHR 0x83
    (character, [c (CHR (character,[c CHR0x84)])java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    , [ (CHR 097],

    (character, [c (CHR 0x99)]),
    ( 0x9A)],
    character, [ (HR 0x9B],
    (character, [c (CHR 0x9C)]),
    (character, [c (CHR 0x9D)]),
    (character, [  waiting([CHR088)java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (character, [c (CHR 0x9F)]),
     c H 0]
    c, c(0A1],
    (,[ (0A2],
    (character, [c (CHR 0xA3)] for(; 
    (character, [c (CHR 0xA4)]),
    (   error  0;
    ( [ (HR 0)],
    (character, [c (CHR 0xA7)]),
    (character, [c (CHR 0xA8)]),
    (,[c CHR 0xA9))java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (character, [c (CHR 0xAA)]),
    (haracter c(HR )]),
    (character    le32_to_cpu(ms->    character, [( 08F])
    (character, [c (CHR 0xAD)]),
    (character, [c (CHR 0xAE)]),
    (character(character,     le32_to_cpu(s), le32_to_cpu(s->m_remid,
    from_dlm_errno(e32_to_cpu(ms-m_esult))
    c( 0xB1))
    (character, [c (CHR 0xB2)]),
    ((character,[ CHR 0x92],
    character, [ ( 0xB4)])java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (character, [c (CHR 0xB5)]),
    (character, [c error =-EINTR;
    (character, [c (CHR 0xB7)]),
  (haracter, [c (CHR 0xB8)]),
      }
   (haracter,[(haracter [ CR ])
    (character, [c  &-ls_requestqueue_lock
( c(HR0BC]
    (character, [c (CHR 0xBD)]),
     returnerror;
    (character, [c (CHR static  purge_request(truct dlm_ls*,struct dlm_message*,int nodeid
    (character, [c (CHR 0xC0)]),
    (character, c (HR 0xC1])
    (character, [c (CHR 0xC2)]),
    (character,    (java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    (haracter [ (HR0xC4])

    ( return 0
    ,c HR0)java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (     caracterc 0)],
    (character, [c (CHR 0xC9)]),
    (haracter c( 0xCA))java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (,[ CR0CBjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    cHRx)])
    (character }
    (character, [c (CHR 0java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 2
    (,cC0xA2,
    (character, [c (CHR 0xD0)]),
    (character, [c (CHR 0xD1)    ( [c (HR0xA3)]java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (    (, ( 0))
    (character, [c (CHR 0xD3)]),
    ( cCHR 0])
    (character, [c (CHR 0xD5)]),
    (character, [c (CHR 0xD6)]),
   character,[ CHRx))
    (character, [c (CHR 0xD8)]),
    (character, [c (CHR 0xD9)]),
     c (0xDA)java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (character, [c (CHR 0xDB)]),
    (haracter, CHR )],
    (character, [c (CHR 0xDD)]),
    (character, [c (CHR 0xDE))
    (character, [c (CHR 0xDF)]),
    (character, [c (CHR 0xE0)]),
    (character, [ (CHR xE1))java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (, [ (CHR 0xE2)],
    (character, [c (CHR 0xE3)]),
    (character, [c (CHR 0xE4)]),
    (character, [c (CHR 0xE5)]),
(  CHR0)]java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    (character, [c (CHR 0xE7)]),
    (character, [c (CHR 0xE8)]),
    (character, [c (CHR 0xE9)]),
    (character, [c (CHR 0xEA)]),
    (character, [c (CHR 0xEB)]),
    (character, [c (CHR 0xEC)]),
    (character, [c (CHR 0xED)])    character,c( 0],
    (character, [c (CHR 0xEE)]),
    (character,c( 0xEF],
    (character, [c (CHR 0xF0)]),
    (character, [c (CHR 0xF1)]),
    (character, [c (CHR 0xF2)]),
    (character, [c (CHR 0xF3)]),
    (character, [c (CHR 0xF4)]),
    character, [c (CHR 0xF5)]),
    (character, [c (CHR 0xF6)]),
    (character, [c (CHR 0xF7)]),
    (character, [c (CHR 0xF8)]),
    (character, [c (CHR 0xF9)]),
    (character, [c (CHR 0xFA)]),
    (character, [c (CHR 0xFB)]),
    (character, [c (CHR 0xFC)]),
    (character, [c (CHR 0xFD)]),
    (character, [c (CHR 0xFE)]),
    (character, [c (CHR 0xFF)]),
    (character, [c (CHR 0x5C), escape]),

    (escape, [c (CHR 0x22)]),
    (escape, [c (CHR 0x5C)]),
    (escape, [c (CHR ''/'')]),
    (escape, [c (CHR ''b'')]),
    (escape, [c (CHR ''f'')]),
    (escape, [c (CHR ''n'')]),
    (escape, [c (CHR ''r'')]),
    (escape, [c (CHR ''t'')]),
    (escape, [c (CHR ''u''), hex, hex, hex, hex]),

    (hex, [digit]),
    (hex, [c (CHR ''A'')]),
    (hex, [c (CHR ''B'')]),
    (hex, [c (CHR ''C'')]),
    (hex, [c (CHR ''D'')]),
    (hex, [c (CHR ''E'')]),
    (hex, [c (CHR ''F'')]),
    (hex, [c (CHR ''a'')]),
    (hex, [c (CHR ''b'')]),
    (hex, [c (CHR ''c'')]),
    (hex, [c (CHR ''d'')]),
    (hex, [c (CHR ''e'')]),
    (hex, [c (CHR ''f'')]),

    (number, [integer]),
    (number, [integer, exponent]),
    (number, [integer, fraction]),
    (number, [integer, fraction, exponent]),

    (fraction, [c (CHR ''.''), digits]),

    (exponent, [expsymbol, digits]),
    (exponent, [expsymbol, sign, digits]),
  
    (expsymbol, [c (CHR ''E'')]),
    (expsymbol, [c (CHR ''e'')]),

    (sign, [c (CHR ''+'')]),
    (sign, [c (CHR ''-'')]),

    (integer, [digit]),
    (integer, [onenine, digits]),
    (integer, [c (CHR ''-''), digit]),
    (integer, [c (CHR ''-''), onenine, digits]),

    (digits, [digit]),
    (digits, [digit, digits]),

    (digit, [c (CHR ''0'')]),
    (digit, [onenine]),

    (onenine, [c (CHR ''1'')]),
    (onenine, [c (CHR ''2'')]),
    (onenine, [c (CHR ''3'')]),
    (onenine, [c (CHR ''4'')]),
    (onenine, [c (CHR ''5'')]),
    (onenine, [c (CHR ''6'')]),
    (onenine, [c (CHR ''7'')]),
    (onenine, [c (CHR ''8'')]),
    (onenine, [c (CHR ''9'')])
  ]"

definition JSON_cfg :: "JSON cfg" where
  "JSON_cfg = CFG JSON_rules json"


lemma \<epsilon>_free_JSON:
  "\<epsilon>_free JSON_cfg"
  by (auto simp: \<epsilon>_free_def JSON_cfg_def JSON_rules_def rhs_rule_def)

definition JSON_inp1 :: "JSON list" where
  \<open>JSON_inp1 = map c ''
{
    "glossary": {
        "title": "example glossary",
  "GlossDiv": {
            "title": "S",
   "GlossList": {
                "GlossEntry": {
                    "ID": "SGML",
     "SortAs": "SGML",
     "GlossTerm": "Standard Generalized Markup Language",
     "Acronym": "SGML",
     "Abbrev": "ISO 8879:1986",
     "GlossDef": {
                        "para": "A meta-markup language, used to create markup languages such as DocBook.",
      "GlossSeeAlso": ["GML", "XML"]
                    },
     "GlossSee": "markup"
                }
            }
        }
    }
}
  ''\<close>

value "size_bins (Earley\<^sub>L JSON_cfg JSON_inp1)" \<comment>\<open>77921\<close>
value "size_pointers (Earley\<^sub>L JSON_cfg JSON_inp1)" \<comment>\<open>77921\<close>
value "recognizer JSON_cfg JSON_inp1"
value "build_tree JSON_cfg JSON_inp1 (Earley\<^sub>L JSON_cfg JSON_inp1)"

definition JSON_inp2 :: "JSON list" where
  \<open>JSON_inp2 = map c ''
{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
  ''\<close>

value "size_bins (Earley\<^sub>L JSON_cfg JSON_inp2)" \<comment>\<open>33720\<close>
value "size_pointers (Earley\<^sub>L JSON_cfg JSON_inp2)" \<comment>\<open>33720\<close>
value "recognizer JSON_cfg JSON_inp2"
value "build_tree JSON_cfg JSON_inp2 (Earley\<^sub>L JSON_cfg JSON_inp2)"

definition JSON_inp3 :: "JSON list" where
  \<open>JSON_inp3 = map c ''
{"widget": {
    "debug": "on",
    "window": {
        "title": "Sample Konfabulator Widget",
        "name": "main_window",
        "width": 500,
        "height": 500
    },
    "image": { 
        "src": "Images/Sun.png",
        "name": "sun1",
        "hOffset": 250,
        "vOffset": 250,
        "alignment": "center"
    },
    "text": {
        "data": "Click Here",
        "size": 36,
        "style": "bold",
        "name": "text1",
        "hOffset": 250,
        "vOffset": 100,
        "alignment": "center",
        "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;"
    }
}}  
  ''\<close>

value "size_bins (Earley\<^sub>L JSON_cfg JSON_inp3)" \<comment>\<open>74472\<close>
value "size_pointers (Earley\<^sub>L JSON_cfg JSON_inp3)" \<comment>\<open>74472\<close>
value "recognizer JSON_cfg JSON_inp3"
value "build_tree JSON_cfg JSON_inp3 (Earley\<^sub>L JSON_cfg JSON_inp3)"

definition JSON_inp4 :: "JSON list" where
  \<open>JSON_inp4 = map c ''
{"web-app": {
  "servlet": [   
    {
      "servlet-name": "cofaxCDS",
      "servlet-class": "org.cofax.cds.CDSServlet",
      "init-param": {
        "configGlossary:installationAt": "Philadelphia, PA",
        "configGlossary:adminEmail": "ksm@pobox.com",
        "configGlossary:poweredBy": "Cofax",
        "configGlossary:poweredByIcon": "/images/cofax.gif",
        "configGlossary:staticPath": "/content/static",
        "templateProcessorClass": "org.cofax.WysiwygTemplate",
        "templateLoaderClass": "org.cofax.FilesTemplateLoader",
        "templatePath": "templates",
        "templateOverridePath": "",
        "defaultListTemplate": "listTemplate.htm",
        "defaultFileTemplate": "articleTemplate.htm",
        "useJSP": false,
        "jspListTemplate": "listTemplate.jsp",
        "jspFileTemplate": "articleTemplate.jsp",
        "cachePackageTagsTrack": 200,
        "cachePackageTagsStore": 200,
        "cachePackageTagsRefresh": 60,
        "cacheTemplatesTrack": 100,
        "cacheTemplatesStore": 50,
        "cacheTemplatesRefresh": 15,
        "cachePagesTrack": 200,
        "cachePagesStore": 100,
        "cachePagesRefresh": 10,
        "cachePagesDirtyRead": 10,
        "searchEngineListTemplate": "forSearchEnginesList.htm",
        "searchEngineFileTemplate": "forSearchEngines.htm",
        "searchEngineRobotsDb": "WEB-INF/robots.db",
        "useDataStore": true,
        "dataStoreClass": "org.cofax.SqlDataStore",
        "redirectionClass": "org.cofax.SqlRedirection",
        "dataStoreName": "cofax",
        "dataStoreDriver": "com.microsoft.jdbc.sqlserver.SQLServerDriver",
        "dataStoreUrl": "jdbc:microsoft:sqlserver://LOCALHOST:1433;DatabaseName=goon",
        "dataStoreUser": "sa",
        "dataStorePassword": "dataStoreTestQuery",
        "dataStoreTestQuery": "SET NOCOUON;select test='test';",
        "dataStoreLogFile": "/usr/local/tomcat/logs/datastore.log",
        "dataStoreInitConns": 10,
        "dataStoreMaxConns": 100,
        "dataStoreConnUsageLimit": 100,
        "dataStoreLogLevel": "debug",
        "maxUrlLength": 500}},
    {
      "servlet-name": "cofaxEmail",
      "servlet-class": "org.cofax.cds.EmailServlet",
      "init-param": {
      "mailHost": "mail1",
      "mailHostOverride": "mail2"}},
    {
      "servlet-name": "cofaxAdmin",
      "servlet-class": "org.cofax.cds.AdminServlet"},
 
    {
      "servlet-name": "fileServlet",
      "servlet-class": "org.cofax.cds.FileServlet"},
    {
      "servlet-name": "cofaxTools",
      "servlet-class": "org.cofax.cms.CofaxToolsServlet",
      "init-param": {
        "templatePath": "toolstemplates/",
        "log": 1,
        "logLocation": "/usr/local/tomcat/logs/CofaxTools.log",
        "logMaxSize": "",
        "dataLog": 1,
        "dataLogLocation": "/usr/local/tomcat/logs/dataLog.log",
        "dataLogMaxSize": "",
        "removePageCache": "/content/admin/remove?cache=pages&id=",
        "removeTemplateCache": "/content/admin/remove?cache=templates&id=",
        "fileTransferFolder": "/usr/local/tomcat/webapps/content/fileTransferFolder",
        "lookInContext": 1,
        "adminGroupID": 4,
        "betaServer": true}}],
  "servlet-mapping": {
    "cofaxCDS": "/",
    "cofaxEmail": "/cofaxutil/aemail/*",
    "cofaxAdmin": "/admin/*",
    "fileServlet": "/static/*",
    "cofaxTools": "/tools/*"},
 
  "taglib": {
    "taglib-uri": "cofax.tld",
    "taglib-location": "/WEB-INF/tlds/cofax.tld"}}}
  ''\<close>

value "size_bins (Earley\<^sub>L JSON_cfg JSON_inp4)" \<comment>\<open>584814\<close>
value "size_pointers (Earley\<^sub>L JSON_cfg JSON_inp4)" \<comment>\<open>584814\<close>
value "recognizer JSON_cfg JSON_inp4"
value "build_tree JSON_cfg JSON_inp4 (Earley\<^sub>L JSON_cfg JSON_inp4)"


definition JSON_inp5 :: "JSON list" where
  \<open>JSON_inp5 = map c ''
{"menu": {
    "header": "SVG Viewer",
    "items": [
        {"id": "Open"},
        {"id": "OpenNew", "label": "Open New"},
        null,
        {"id": "ZoomIn", "label": "Zoom In"},
        {"id": "ZoomOut", "label": "Zoom Out"},
        {"id": "OriginalView", "label": "Original View"},
        null,
        {"id": "Quality"},
        {"id": "Pause"},
        {"id": "Mute"},
        null,
        {"id": "Find", "label": "Find..."},
        {"id": "FindAgain", "label": "Find Again"},
        {"id": "Copy"},
        {"id": "CopyAgain", "label": "Copy Again"},
        {"id": "CopySVG", "label": "Copy SVG"},
        {"id": "ViewSVG", "label": "View SVG"},
        {"id": "ViewSource", "label": "View Source"},
        {"id": "SaveAs", "label": "Save As"},
        null,
        {"id": "Help"},
        {"id": "About", "label": "About Adobe CVG Viewer..."}
    ]
}}
  ''\<close>

value "size_bins (Earley\<^sub>L JSON_cfg JSON_inp5)" \<comment>\<open>114506\<close>
value "size_pointers (Earley\<^sub>L JSON_cfg JSON_inp5)" \<comment>\<open>114506\<close>
value "recognizer JSON_cfg JSON_inp5"
value "build_tree JSON_cfg JSON_inp5 (Earley\<^sub>L JSON_cfg JSON_inp5)"
*)

end

Messung
CHZG
849610093

¤ Dauer der Verarbeitung: 0.164 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover


Cephes Mathematical Library

Vienna Development Method

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

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1104846
#Domains=499270