# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: problem.proto
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='problem.proto',
  package='AzureQuantum',
  syntax='proto3',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\rproblem.proto\x12\x0c\x41zureQuantum\x1a\x1cgoogle/protobuf/struct.proto\"\xc7\x03\n\x07Problem\x12\x39\n\rcost_function\x18\x01 \x01(\x0b\x32\".AzureQuantum.Problem.CostFunction\x12)\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x1a\x1e\n\x04Term\x12\t\n\x01\x63\x18\x01 \x01(\x01\x12\x0b\n\x03ids\x18\x02 \x03(\x03\x1a\xf7\x01\n\x0c\x43ostFunction\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.AzureQuantum.Problem.ProblemType\x12\x0f\n\x07version\x18\x02 \x01(\t\x12)\n\x05terms\x18\x03 \x03(\x0b\x32\x1a.AzureQuantum.Problem.Term\x12G\n\x0binit_config\x18\x04 \x03(\x0b\x32\x32.AzureQuantum.Problem.CostFunction.InitConfigEntry\x1a\x31\n\x0fInitConfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\"<\n\x0bProblemType\x12\x08\n\x04PUBO\x10\x00\x12\t\n\x05ISING\x10\x01\x12\n\n\x06MAXSAT\x10\x02\x12\x0c\n\x08SOFTSPIN\x10\x03\x62\x06proto3'
  ,
  dependencies=[google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,])



_PROBLEM_PROBLEMTYPE = _descriptor.EnumDescriptor(
  name='ProblemType',
  full_name='AzureQuantum.Problem.ProblemType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='PUBO', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='ISING', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='MAXSAT', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SOFTSPIN', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=457,
  serialized_end=517,
)
_sym_db.RegisterEnumDescriptor(_PROBLEM_PROBLEMTYPE)


_PROBLEM_TERM = _descriptor.Descriptor(
  name='Term',
  full_name='AzureQuantum.Problem.Term',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='c', full_name='AzureQuantum.Problem.Term.c', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='ids', full_name='AzureQuantum.Problem.Term.ids', index=1,
      number=2, type=3, cpp_type=2, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=175,
  serialized_end=205,
)

_PROBLEM_COSTFUNCTION_INITCONFIGENTRY = _descriptor.Descriptor(
  name='InitConfigEntry',
  full_name='AzureQuantum.Problem.CostFunction.InitConfigEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='AzureQuantum.Problem.CostFunction.InitConfigEntry.key', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='AzureQuantum.Problem.CostFunction.InitConfigEntry.value', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=406,
  serialized_end=455,
)

_PROBLEM_COSTFUNCTION = _descriptor.Descriptor(
  name='CostFunction',
  full_name='AzureQuantum.Problem.CostFunction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='AzureQuantum.Problem.CostFunction.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='version', full_name='AzureQuantum.Problem.CostFunction.version', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='terms', full_name='AzureQuantum.Problem.CostFunction.terms', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='init_config', full_name='AzureQuantum.Problem.CostFunction.init_config', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_PROBLEM_COSTFUNCTION_INITCONFIGENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=208,
  serialized_end=455,
)

_PROBLEM = _descriptor.Descriptor(
  name='Problem',
  full_name='AzureQuantum.Problem',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='cost_function', full_name='AzureQuantum.Problem.cost_function', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='metadata', full_name='AzureQuantum.Problem.metadata', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_PROBLEM_TERM, _PROBLEM_COSTFUNCTION, ],
  enum_types=[
    _PROBLEM_PROBLEMTYPE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=62,
  serialized_end=517,
)

_PROBLEM_TERM.containing_type = _PROBLEM
_PROBLEM_COSTFUNCTION_INITCONFIGENTRY.containing_type = _PROBLEM_COSTFUNCTION
_PROBLEM_COSTFUNCTION.fields_by_name['type'].enum_type = _PROBLEM_PROBLEMTYPE
_PROBLEM_COSTFUNCTION.fields_by_name['terms'].message_type = _PROBLEM_TERM
_PROBLEM_COSTFUNCTION.fields_by_name['init_config'].message_type = _PROBLEM_COSTFUNCTION_INITCONFIGENTRY
_PROBLEM_COSTFUNCTION.containing_type = _PROBLEM
_PROBLEM.fields_by_name['cost_function'].message_type = _PROBLEM_COSTFUNCTION
_PROBLEM.fields_by_name['metadata'].message_type = google_dot_protobuf_dot_struct__pb2._STRUCT
_PROBLEM_PROBLEMTYPE.containing_type = _PROBLEM
DESCRIPTOR.message_types_by_name['Problem'] = _PROBLEM
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Problem = _reflection.GeneratedProtocolMessageType('Problem', (_message.Message,), {

  'Term' : _reflection.GeneratedProtocolMessageType('Term', (_message.Message,), {
    'DESCRIPTOR' : _PROBLEM_TERM,
    '__module__' : 'problem_pb2'
    # @@protoc_insertion_point(class_scope:AzureQuantum.Problem.Term)
    })
  ,

  'CostFunction' : _reflection.GeneratedProtocolMessageType('CostFunction', (_message.Message,), {

    'InitConfigEntry' : _reflection.GeneratedProtocolMessageType('InitConfigEntry', (_message.Message,), {
      'DESCRIPTOR' : _PROBLEM_COSTFUNCTION_INITCONFIGENTRY,
      '__module__' : 'problem_pb2'
      # @@protoc_insertion_point(class_scope:AzureQuantum.Problem.CostFunction.InitConfigEntry)
      })
    ,
    'DESCRIPTOR' : _PROBLEM_COSTFUNCTION,
    '__module__' : 'problem_pb2'
    # @@protoc_insertion_point(class_scope:AzureQuantum.Problem.CostFunction)
    })
  ,
  'DESCRIPTOR' : _PROBLEM,
  '__module__' : 'problem_pb2'
  # @@protoc_insertion_point(class_scope:AzureQuantum.Problem)
  })
_sym_db.RegisterMessage(Problem)
_sym_db.RegisterMessage(Problem.Term)
_sym_db.RegisterMessage(Problem.CostFunction)
_sym_db.RegisterMessage(Problem.CostFunction.InitConfigEntry)


_PROBLEM_COSTFUNCTION_INITCONFIGENTRY._options = None
# @@protoc_insertion_point(module_scope)
